在Java中调用Python?

发布于 2021-02-02 23:15:46

我想知道是否可以使用jython从Java代码调用python函数,还是仅用于从python调用Java代码?

关注者
0
被浏览
148
1 个回答
  • 面试哥
    面试哥 2021-02-02
    为面试而生,有面试问题,就找面试哥。

    Jython:适用于Java平台的Python- 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);
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看