在Java中调用Python?

2024-03-07

我想知道是否可以使用 Jython 从 Java 代码调用 Python 函数,还是只能从 Python 调用 Java 代码?


Jython:用于 Java 平台的 Python -http://www.jython.org/index.html http://www.jython.org/index.html

您可以使用 Jython 从 Java 代码轻松调用 python 函数。只要您的 python 代码本身在 jython 下运行,即不使用某些不支持的 c 扩展。

如果这对您有用,那么这肯定是您可以获得的最简单的解决方案。否则你可以使用org.python.util.PythonInterpreter来自新的Java6解释器的支持。

我脑海中的一个简单示例 - 但我希望应该可以工作:(为了简洁起见,没有进行错误检查)

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);

截至 2021 年,Jython 不支持 Python 3.x

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在Java中调用Python? 的相关文章

随机推荐