java如何呼叫python指令碼
- IT科技
- 關注:2.52W次
在日常生活中比較常見的java呼叫python指令碼方法有兩種,即:
1、通過Jython.jar提供的類庫實現。
2、通過Runtime.getRuntime()開啟程序來執行指令碼檔案。
不過第二種方法可能會更好一些,因為Python有時候也是需要用到第三方庫的,例如requests,而Python並不支援。因此本地安裝Python環境時需要再安裝第三方庫,然後使用Java呼叫即可。
參考範例:
Python程式碼示例:
def hello():
print('Hello,Python')
if __name__ == '__main__':
hello()
Java程式碼示例:
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class HelloPython {
public static void main(String[] args) {
String[] arguments = new String[] {"python", "E://workspace/hello.py"};
try {
Process process = Runtime.getRuntime().exec(arguments);
BufferedReader in = new BufferedReader(new InputStreamReader(process.getInputStream(),
"GBK"));
String line = null;
while ((line = in.readLine()) != null) {
System.out.println(line);
}
in.close();
//java程式碼中的process.waitFor()返回值為0表示呼叫python指令碼成功,
//返回值為1表示呼叫python指令碼失敗,這和通常意義上見到的0與1定義正好是相反的
int re = process.waitFor();
System.out.println(re);
} catch (Exception e) {
e.printStackTrace();
}
}
}
- 文章版權屬於文章作者所有,轉載請註明 https://shqsg.com/dianzi/585lo3.html