【发布时间】:2018-09-17 03:35:43
【问题描述】:
我正在做一个项目,需要我重复在python中运行一个java函数(这就像在python中设计一个学习算法,但值函数是在java中提供的)
那么这种情况下的做法是什么?我应该每次都使用 subprocess.run() 调用 java 函数还是应该使用 Py4J、Jython 或 JPype 之类的东西?使用 subprocess.run() 和其他有什么区别?
效率应该是最关心的问题,因为我需要重复运行same java函数。
【问题讨论】:
-
Jython 不是库。它是在 JVM 上运行并可以本地访问任何 Java 代码的 python 解释器(与 CPython 相对)的替代实现。这辈子不存在“最好的方法”。选择更适合您的项目的内容。
-
@lakshman 感谢您的评论,只是意识到我没有正确表达我的问题。现在我对其进行了修改,强调了广泛对同一功能的使用
-
@cricket_007 就像一次又一次地调用同一个函数。只是把单词改成重复
-
我现在明白了...所以,我要问 - 你能把这个过程重写成 C/C++ 之类的东西并使用 Swig,例如在 Java 和 Python 之间共享这个函数吗?
标签: java python subprocess jython jpype