怎么使用java运行python脚本?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么使用java运行python脚本?相关的知识,希望对你有一定的参考价值。

jdk6.0后可以使用其他脚本引擎,但是怎么把python的包替换java的SCRIPT引擎包,然后执行?知道的大哥可以M下我。445824272
不知道别瞎说,可以调用的。

如果是jython,也就是运行在Jvm上的python的话,可以使用JSR223,JDK1.6已经包含了该扩展包。JSR223是一个用于解析多种脚本语言的库包,其中包括Jython。除了JSR223包之外,还需要jython-engine.jar包。
ScriptEngine engine = new ScriptEngineManager().getEngineByName("python");
try

engine.eval(new FileReader("./script/listing.py"));

catch(ScriptException se)


catch(IOException ie)


或者参考:http://www.360doc.com/content/10/0608/23/1404822_32043230.shtml
很久之前用过ScriptEngine,对在Jvm上的脚本语言比如jruby,jython,groovy等支持性都很好,有点忘记了。
参考技术A 1.直接执行Python脚本代码
    引用 org.python包
1 PythonInterpreter interpreter = new PythonInterpreter();
2 interpreter.exec("days=('mod','Tue','Wed','Thu','Fri','Sat','Sun'); "); ///执行python脚本

  
  2. 执行python .py文件
1 PythonInterpreter interpreter = new PythonInterpreter();
2 InputStream filepy = new FileInputStream("D:\\demo.py");
3 interpreter.execfile(filepy); ///执行python py文件
4 filepy.close();

  
  3. 使用Runtime.getRuntime()执行脚本文件
     这种方式和.net下面调用cmd执行命令的方式类似。如果执行的python脚本有引用第三方包的,建议使用此种方式。使用上面两种方式会报错java ImportError: No module named arcpy。
1 Process proc = Runtime.getRuntime().exec("python D:\\demo.py");
2 proc.waitFor();
参考技术B 你的意思是用java 调用 Python?
可行吗?个人感觉python比java还先进。应该只有python调用java才对。
有个Jython可以使用java的类跟方法。
参考技术C LZ等JDK7吧 参考技术D 这个貌似不行吧

怎么在python脚本中调用其它的python脚本运行?

我在eclipse中编写了几个脚本1,2,3,4,5.现在我想在写一个脚本控制这几个脚本的运行。例如:我现在想要执行1,3,5脚本,就用一个python脚本直接去调用这三个脚本。这样我每次执行的时候直接编辑这个脚本后运行一次就可以多个脚本了,而不用一个一个的脚本去运行了,不知道我这样说清楚没,谢谢!

若是同目录: import 1,3,5
若不是先把他们加到系统变量里:
import sys
sys.path.append('路径\1')
sys.path.append('路径\3')

sys.path.append('路径\5')

再直接import
参考技术A 如果要在test.py中调用脚本func.py脚本

首先,两个脚本文件要放在pythonpath下,其次在test.py脚本的开头写上import func,这样就可以直接调用func中的函数方法了。
参考技术B 直接import 就行了啊 参考技术C #x.py
./1.py
./3.py
./5.py

以上是关于怎么使用java运行python脚本?的主要内容,如果未能解决你的问题,请参考以下文章

用java调用python脚本,单独的python脚本可以运行,但是在java里面调用的时候告知缺少模块。怎么破?

azkaban怎么在job里面直接调用python脚本啊,我调用shell脚本正常运行,调用python脚本没有运行

怎么在python脚本中调用其它的python脚本运行?

怎样用QtCreator编辑运行python脚本

Jenkins运行python脚本报错

运行python脚本一闪而过