我想知道是否可以使用jython从Java代码调用python函数,还是仅用于从python调用Java代码?
Jython:适用于Java平台的Python- http ://www.jython.org/index.html
Python- http ://www.jython.org/index.html
你可以使用Jython从Java代码轻松调用python函数。只要你的python代码本身在jython下运行,即不使用某些不受支持的c扩展名。
如果这对你有用,那肯定是你可以获得的最简单的解决方案。否则,你可以使用org.python.util.PythonInterpreter新的Java6解释器支持。
org.python.util.PythonInterpreter
举个简单的例子-但我希望它可以工作:(为简便起见,不进行错误检查)
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);