gpt4 book ai didi

java - 将数据从 java 传递到 python 并返回 jython

转载 作者:行者123 更新时间:2023-11-29 04:53:12 24 4
gpt4 key购买 nike

我正在使用 Jython 从 Java 运行 python 脚本。当我使用 PythonInterpreter 调用脚本时,我能够将数据作为命令行参数发送到 python 脚本。

现在我想从 Jython 脚本中调用 Java 方法,将 List 作为方法参数传递。我该怎么做?

最佳答案

我发布了从 Java -> Python 和 Python -> Java 传递数据的代码。希望这对某人有帮助!在此,字符串数组“s”被传递给 python 脚本,“city”列表通过函数调用 getData() 从 python 传递给 Java。

JavaProg.java:

import org.python.core.PyInstance;
import org.python.util.PythonInterpreter;


public class JavaProg
{
static PythonInterpreter interpreter;

@SuppressWarnings("resource")
public static void main( String gargs[] )
{
String[] s = {"New York", "Chicago"};
PythonInterpreter.initialize(System.getProperties(),System.getProperties(), s);
interpreter = new PythonInterpreter();
interpreter.execfile("PyScript.py");
PyInstance hello = (PyInstance) interpreter.eval("PyScript" + "(" + "None" + ")");
}

public void getData(Object[] data)
{
for (int i = 0; i < data.length; i++) {
System.out.print(data[i].toString());
}

}
}

PyScript.py:

import JavaProg
class PyScript:
def __init__(self,txt):
city = []
for i in range(0,len(sys.argv)):
city.append(str(sys.argv[i]))
jObj = JavaProg()
jObj.getData(city)
print "Done!"

关于java - 将数据从 java 传递到 python 并返回 jython,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34657490/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com