ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

如果你是一名java程序员,面对已经写好的python脚本该如何调用,其实很简单!

2021-11-09 20:32:33  阅读:147  来源: 互联网

标签:java python 程序员 import print world proc


当然,一种需求的实现可能有很多种方式可以选择,经过筛选选择了使用Runtime对象执行脚本返回运行过程的方式,然后将返回的过程结果转换为流最后进行遍历输出。

file

【阅读全文】

在C盘下面创建一个hello_world.py文件作为python脚本的演示文件,填写内容为:

print("======================")

print("hello world")

print("======================")

编写java调用脚本:

package main_proj;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {

    public static void main(String[] args) {
        // 创建运行过程
        Process proc;
        try {
            // 通过exec()函数执行python命令运行.py脚本,返回存储过程
            proc = Runtime.getRuntime().exec("python C:\\hello_world.py");
            // 将返回返回的运行过程转化为存储流
            BufferedReader in = new BufferedReader(new InputStreamReader(proc.getInputStream()));
            // 构建行数据对象
            String line = null;
            // 逐行读取、打印结果
            while ((line = in.readLine()) != null) {
                System.out.println(line);
            }
            // 关闭输入流
            in.close();
            proc.waitFor();
        } catch (IOException e) {
            e.printStackTrace();
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }

}

file

【往期精彩】

● 如何使用PyQt5一步步实现用户登录GUI界面、登录后跳转?

● 办公自动化:几行代码将PDF文档转换为WORD文档(代码实战)!

● 办公自动化:轻松提取PDF页面数据,并生成Excel文件(代码实战)!

● sched 模块中巨好用的轻量级定时任务神器scheduler!

● 不用再使用命令行打包成exe,有人写出了UI应用,可视化UI界面对python程序进行打包的方法!

● 发现一个秘密:既python3.6之后字典竟然变成了有序集合,我再次验证了一下!

● 这么多的内置函数能记住吗?对python的68个内置函数分类总结!

● 必须要会的文件操作对象File,python文件读写操作利器!

● 你不知道的CS模式的进程管理工具,状态监测、项目启停一目了然!

● 如何将一个python应用以docker镜像的方式来运行?

● python-celery专注于实现分布式异步任务处理、任务调度的插件!

● python远程服务操作工具:fabric,远程命令、本地命令、服务器操作利器!

● python超赞插件you-get,执行一行命令即可下载、命令行下载工具推荐!

● 办公自动化:Python-win32com自动将word文档转换成pdf格式!

标签:java,python,程序员,import,print,world,proc
来源: https://www.cnblogs.com/lwsbc/p/15530753.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有