是否可以從 Java 程式碼呼叫 Python 函數的問題是本次討論的核心。雖然 Jython 主要使 Python 程式碼能夠與 Java 互動似乎是合乎邏輯的,但事實是,它支援兩個方向。
解決方案:利用 Jython
Jython 充當Python 和 Java 之間的橋樑,允許兩種語言之間的無縫整合。借助 Jython,您可以在 Java 程式碼中無縫呼叫 Python 函數,前提是 Python 程式碼遵循 Jython 的執行環境並且不依賴不受支援的 C 擴充。
範例:將Jython 付諸實踐
為了說明該過程,請考慮以下內容snippet:
PythonInterpreter interpreter = new PythonInterpreter(); interpreter.exec("import sys\nsys.path.append('pathToModules if they are not there by default')\nimport yourModule"); // execute a function that takes a string and returns a string PyObject someFunc = interpreter.get("funcName"); PyObject result = someFunc.__call__(new PyString("Test!")); String realResult = (String) result.__tojava__(String.class);
此程式碼片段示範了如何從Java 執行名為「funcName」的Python 函數,傳遞字串並以字串形式接收結果。
注意: 要注意的是,Jython 目前不支援 Python 3.x,限制了它與 Python 2.x 版本的兼容性。
以上是Java可以呼叫Python函數嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!