使用Runtime.getRuntime()执行python脚本文件
其他方法在引入外部包的时候会报错。
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class RuntimeFunction {
public static void main(String[] args) {
Process proc;
//传入的参数
Integer courseNum=1;
try {
String[] args1 = new String[] { "python", "F:\\CourseOCR2.py",
String.valueOf(courseNum)
};
Process proc = Runtime.getRuntime().exec(args1);// 执行py文件
//解决乱码问题gb2312
BufferedReader in = new BufferedReader(new InputStreamReader(proc.getInputStream(),"gb2312"));
String line = null;
Integer flag=0;
while ((line = in.readLine()) != null) {
System.out.println(line);
}
in.close();
proc.waitFor();
} catch (IOException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
import sys
def func(a,b):
return (a+b)
if __name__ == '__main__':
a = []
# sys.argv[1]是获取到的第一个参数,注意是1
for i in range(1, len(sys.argv)):
a.append((int(sys.argv[i])))
print(func(a[0],a[1]))