Java如何調(diào)用Python腳本

小樊
81
2024-09-30 03:18:22

在Java中調(diào)用Python腳本,可以通過(guò)以下兩種主要方法實(shí)現(xiàn):

使用Java的Runtime類(lèi)

Java的Runtime類(lèi)提供了一個(gè)簡(jiǎn)單的方法來(lái)執(zhí)行外部命令,包括Python腳本。以下是一個(gè)示例代碼:

import java.io.BufferedReader;
import java.io.InputStreamReader;

public class JavaCallPython {
    public static void main(String[] args) {
        try {
            // 指定Python腳本的路徑
            String pythonScriptPath = "/path/to/your/python_script.py";

            // 使用Runtime類(lèi)執(zhí)行Python腳本
            Process process = Runtime.getRuntime().exec("python " + pythonScriptPath);

            // 讀取Python腳本的輸出
            BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
            String line;
            while ((line = reader.readLine()) != null) {
                System.out.println(line);
            }

            // 等待Python腳本執(zhí)行完成
            int exitCode = process.waitFor();
            System.out.println("Python script exited with code " + exitCode);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

在這個(gè)示例中,你需要將/path/to/your/python_script.py替換為你的Python腳本的實(shí)際路徑。

使用Jython庫(kù)

Jython是一個(gè)將Python代碼集成到Java應(yīng)用程序中的庫(kù)。它允許你在Java程序中直接運(yùn)行Python代碼。以下是一個(gè)使用Jython的示例:

首先,你需要下載并安裝Jython庫(kù)。你可以從Jython官方網(wǎng)站下載最新版本的Jython JAR文件。

然后,你可以使用以下代碼在Java程序中調(diào)用Python腳本:

import org.python.core.PyObject;
import org.python.util.PythonInterpreter;

public class JavaCallPython {
    public static void main(String[] args) {
        try (PythonInterpreter interpreter = new PythonInterpreter()) {
            // 導(dǎo)入Python腳本
            interpreter.execfile("/path/to/your/python_script.py");

            // 調(diào)用Python腳本中的函數(shù)或變量
            PyObject functionName = interpreter.get("function_name");
            PyObject result = functionName.__call__();

            // 將結(jié)果轉(zhuǎn)換為Java類(lèi)型(如果需要)
            // ...

            // 打印結(jié)果
            System.out.println(result);
        }
    }
}

在這個(gè)示例中,你需要將/path/to/your/python_script.py替換為你的Python腳本的實(shí)際路徑,并將function_name替換為你想要調(diào)用的Python函數(shù)名。

注意:在使用Jython時(shí),你需要確保你的Python腳本與Java程序在同一環(huán)境中,或者將Python腳本的路徑添加到Java的類(lèi)路徑中。

0