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

Posted Python 集中营

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如果你是一名java程序员,面对已经写好的python脚本该如何调用,其实很简单!相关的知识,希望对你有一定的参考价值。

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

【阅读全文】

在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();
        }
    }

}

【往期精彩】

● 如何使用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格式!

欢迎关注作者公众号【Python 集中营】,专注于后端编程,每天更新技术干货,不定时分享各类资料!

java中的idea如何把 写好的程序,变成.exe可执行文件?

我已经写好了一个窗口化的小游戏,现在怎么把这个游戏变成.exe的文件,双击它之后,就可以运行这个界面了?还有是不是对方要有jdk才能运行我这 游戏?那java不是 不跨平台?

首先,java的确可以跨平台,比如,你可以在windows、linux上去运行java程序;但是,运行java程序它需要依赖于jvm。比如,你希望在windows上运行你写好的小游戏,那么,你需要在windows系统上搭建java环境,需要有Jvm,这样就可以运行你的java程序了,而不是把它变成.exe的可执行文件。如果你希望开发.exe的可执行文件的那种桌面应用程序,你可以使用C#的winform开发。追问

如何把写好的代码,集合成.exe可执行程序?我现在知道,java是可以跨平台,但是需要安装java的运行环境。

追答

java写的代码不能集合成.exe,但如果你搭建好了java环境,可以把java的代码打包成.jar包文件,然后写一个批处理,比如:java -jar 路径/包名.jar 然后,以后要运行这个程序的话,可以直接点这个批处理进行运行。

参考技术A 跨平台是指一套代码可以在任何地方运行, 前提条件是这些地方安装了jdk才可以运行 参考技术B 跨平台不是绝对的
对java来说跨平台指的是一次编译(成字节码),到处运行
对c语言来说,是同一个源码可以不改动直接编译成各个目标平台的可执行文件

以上是关于如果你是一名java程序员,面对已经写好的python脚本该如何调用,其实很简单!的主要内容,如果未能解决你的问题,请参考以下文章

JAVA,登录界面怎么跳转到下一个界面啊,下一个界面是已经写好的页面?

java打包,jar命令打包写好的程序。可点击显示的jar包

73salesforce通过JAVA来Call在salesforce中已经写好的Restful处理接口

如何用eclipse打开并运行一个已经写好的java文件?

为了效率而外包,不要因为懒惰外包

AOP切面和消息队列支持高并发简易原理