Java调用Python脚本(Python3,Windows10系统)

介绍下如何在Java中调用Python脚本,可能是目前最简单的方法(●’^'●)。

又是师姐的任务,要求把我的Python程序集成到纯Java的系统中。于是在网上又是一顿搜索,不乏各种厉害的方法。其中最常见的是Jython,听起来十分高大上,直接把世界上两种最强大的语言结合了,然后一顿安装操作之后发现目前只支持Python2(这都什么时代了,Python2都要跑路了…)。Github上面倒是有个官方的Jython3.5,然而看不明白怎么用。最终,可能是传说中的信息偶遇吧,发现了一个超级简单的方法,那就是:

从Java调用命令行,再从命令行调用Python脚本。

(看起来很Low,好歹也是个方法吧=.=||)

Java调用命令行,直接看代码:

Process p;
String cmd="python ExecByJava.py \"Hello\" \"World\"";//利用CMD命令调用python,包含两个参数
try{
	p = Runtime.getRuntime().exec(cmd);
	InputStream fis=p.getInputStream();
	InputStreamReader isr=new InputStreamReader(fis);
	BufferedReader br=new BufferedReader(isr);
	String line=null;
    while((line=br.readLine())!=null){
    	System.out.println(line);
    } 
}
catch (IOException e){
	e.printStackTrace();

可以看到这里面要求输入两个参数,也就是要传入到Python中,那么Python里面可以这么写:

import sys

a = sys.argv[1]
b = sys.argv[2]
print(a)
print(b)

看一下结果:

javac -encoding UTF-8  ExecPyhton.java
java ExecPyhton

在这里插入图片描述
(也发现了一个问题,用命令行编译Java,程序里面有中文的话要转码,即使是注释的也不行)

是的,就这么简单( ̄▽ ̄)",完整代码==>GitHub-AuxiliaryScripts

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值