首頁 >後端開發 >Python教學 >如何使用 Jython 從 Java 呼叫 Python 函數?

如何使用 Jython 從 Java 呼叫 Python 函數?

Barbara Streisand
Barbara Streisand原創
2024-11-08 04:05:02399瀏覽

How can I call Python functions from Java using Jython?

從Java 呼叫Python:Jython 的角色

雖然Jython 透過促進在Java 環境中執行Python 程式碼來彌合>

雖然Jython 透過促進在Java 環境中執行Python 程式碼來彌合的鴻溝,值得注意的是它的主要功能:支援從Python 呼叫Java 程式碼。

使用Jython 從Java 呼叫Python 函數

如果您的Python 程式碼與Jython(即不含不受支援的C 擴充),您可以從Java 無縫呼叫Python 函數。這種方法為此任務提供了最直接的解決方案。

範例

以下Java 程式碼片段示範如何呼叫對字串進行操作的Python 函數傳回一個字串:
<code class="java">PythonInterpreter interpreter = new PythonInterpreter();
interpreter.exec("import sys\nsys.path.append('pathToModules if they are not there by default')\nimport yourModule");
PyObject someFunc = interpreter.get("funcName");
PyObject result = someFunc.__call__(new PyString("Test!"));
String realResult = (String) result.__tojava__(String.class);</code>

更複雜場景的替代方法

如果Jython 不是合適的解決方案,Java 6 引入了org.python.util 。 Python直譯器.此 API 提供了從 Java 執行 Python 程式碼的替代方法。

注意:

截至 2021 年,Jython 目前不支援 Python 3.x。

以上是如何使用 Jython 從 Java 呼叫 Python 函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn