从 Java 调用 Python:Jython 的角色
虽然 Jython 通过促进在 Java 环境中执行 Python 代码来弥合 Python 与 Java 之间的鸿沟,值得注意的是它的主要功能:支持从 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中文网其他相关文章!