加油❤爛
- 1 用Runtime调用
- 有参调用
- 无参调用
- 2 使用jython调用
- 有参
- 无参
- 总结
- 原因
- 收获
1 用Runtime调用 有参调用
String[] arg = new String[]{"解释器的位置(本地项目可以直接使用python)",
"python文件位置", 参数};
关键点
在python脚本中使用argv函数接收参数
结果如下
导入依赖
有参org.python jython-standalone2.7.0
PythonInterpreter interpreter = new PythonInterpreter();
interpreter.execfile("F:pyFilemodel.py");
// 第一个参数为期望获得的函数(变量)的名字,第二个参数为期望返回的对象类型
PyFunction pyFunction = interpreter.get("add", PyFunction.class);
//调用函数,如果函数需要参数,在Java中必须先将参数转化为对应的“Python类型”
PyObject pyobj = pyFunction.__call__(new PyInteger(20));
System.out.println( pyobj);
无参
PythonInterpreter interpreter = new PythonInterpreter(); PyObject pyobj = interpreter.execfile(F:pyFilemodel.py"); System.out.println(pyobj);总结 原因
一晚上没有找到参数传递失败的原因,一直想着使用input接收参数,最后参考了其他大佬的笔记才学会了调用。
收获要学会从多个角度思考问题,不要再一个地方死钻牛角尖。
暑期编程PK赛 得CSDN机械键盘等精美礼品!


