當(dāng)使用Java調(diào)用Python腳本時,可以使用Java的ProcessBuilder類來執(zhí)行Python腳本。下面是一個示例代碼,展示了如何在Java中調(diào)用Python腳本:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class PythonScriptExecutor {
public static void main(String[] args) {
try {
// 創(chuàng)建ProcessBuilder對象,指定要執(zhí)行的Python腳本和參數(shù)
ProcessBuilder pb = new ProcessBuilder("python", "script.py", "arg1", "arg2");
// 啟動進(jìn)程并等待執(zhí)行完成
Process process = pb.start();
int exitCode = process.waitFor();
// 讀取Python腳本的輸出結(jié)果
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
StringBuilder output = new StringBuilder();
while ((line = reader.readLine()) != null) {
output.append(line).append("\n");
}
// 輸出Python腳本的執(zhí)行結(jié)果
System.out.println("Python腳本執(zhí)行結(jié)果:\n" + output.toString());
// 檢查Python腳本的執(zhí)行狀態(tài)
if (exitCode == 0) {
System.out.println("Python腳本執(zhí)行成功!");
} else {
System.out.println("Python腳本執(zhí)行失敗!");
}
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
在上述代碼中,我們使用ProcessBuilder類創(chuàng)建一個新的進(jìn)程,并指定要執(zhí)行的Python腳本和參數(shù)。然后,我們啟動進(jìn)程并等待其執(zhí)行完成。接下來,我們讀取Python腳本的輸出結(jié)果,并將其打印出來。我們檢查Python腳本的執(zhí)行狀態(tài),如果退出碼為0,則表示執(zhí)行成功。
以上是一個簡單的示例,你可以根據(jù)自己的需求進(jìn)行修改和擴(kuò)展。希望對你有幫助!
千鋒教育IT培訓(xùn)課程涵蓋web前端培訓(xùn)、Java培訓(xùn)、Python培訓(xùn)、大數(shù)據(jù)培訓(xùn)、軟件測試培訓(xùn)、物聯(lián)網(wǎng)培訓(xùn)、云計算培訓(xùn)、網(wǎng)絡(luò)安全培訓(xùn)、Unity培訓(xùn)、區(qū)塊鏈培訓(xùn)、UI培訓(xùn)、影視剪輯培訓(xùn)、全媒體運營培訓(xùn)等業(yè)務(wù);此外還推出了軟考、、PMP認(rèn)證、華為認(rèn)證、紅帽RHCE認(rèn)證、工信部認(rèn)證等職業(yè)能力認(rèn)證課程;同期成立的千鋒教研院,憑借有教無類的職業(yè)教育理念,不斷提升千鋒職業(yè)教育培訓(xùn)的質(zhì)量和效率。