当前位置: 首页 > 面试题库 >

在Java中调用Python?

施凡
2023-03-14
问题内容

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


问题答案:

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


 类似资料:
  • 我已经做了相当多的研究,从我所看到的来看,我一切都是正确的。我试图在JSP文件中调用一个Java类。每次运行时,我都会出现以下错误:

  • 问题内容: 所以我有一个功能可以检查预订表中有多少取消: 要在SQL中执行他,我使用: 我的结果是: 我的问题是有人可以帮助我在JAVA中调用该函数吗,我尝试过但没有运气。 问题答案: Java提供了这样的目的。 将打印与在pl / sql中相同的内容。根据文档, 创建一个CallableStatement对象以调用数据库存储过程。CallableStatement对象提供了用于设置其IN和OUT

  • 如何从Android Studo(java)准确调用列表用户?:https://docs.aws.amazon.com/cognito-user-identity-pools/latest/apireference/api_listusers.html#api_listusers_requestsyntax 我正在使用下面的代码进行初始化,我也可以调用我的REST API。 我的目标是修改我所有的

  • 我非常熟悉jasperstudio 6.3.0,并且能够毫无问题地从java运行其他报告。效果很好。但是,我无法运行包含子报表的报表。我在这里找到了stackoverflow的解决方案,但仍然无法使其工作。在我的解决方案中,我将报告加载到一个表中进行存储,并从数据库中提取子报告和主报告,然后编译jrxml。到那时一切都很好 网旧金山。jasperreports。发动机JREException:在以

  • 问题内容: 在Java中,使用foreach循环遍历集合时,对集合调用remove是合法的吗?例如: 作为附录,删除尚未迭代的项是否合法?例如, 问题答案: 为了在迭代集合时安全地从集合中删除,你应该使用迭代器。 例如: 从Java文档: 此类的迭代器和方法返回的迭代器是快速失败的:如果在创建迭代器之后的任何时间以任何方式对列表进行结构修改,则除了通过迭代器自己的remove或add方法之外,迭代

  • 问题内容: 我应该做的是创建一个Java存储过程,然后再从Java程序中调用它。 我在执行JAVA程序时遇到问题-带有1个参数的JDBCPiemers(如下)(我需要弄清楚String Nosaukums)。错误:“无效的列名”。 调用ORACLE中的过程可以正常工作。 这是我已存储在数据库中的存储过程。 我用oracle创建了以下程序包。 这是我在其中调用该过程的Java程序。但是我无法使它工作