This article shares java calling python methods for your reference. The specific content is as follows
1. Directly execute python statements in java class
import org.python.util.PythonInterpreter;public class FirstJavaScript { public static void main(String args[]) { PythonInterpreter interpreter = new PythonInterpreter(); interpreter.exec("days=('mod','Tue','Wed','Thu','Fri','Sat','Sun'); "); interpreter.exec("print days[1];"); }// main}The result of the call is Tue, which is displayed on the console, and this is called directly.
2. Call functions in native python scripts in java
First create a python script with the name: my_utils.py
def adder(a, b): return a + b
Then create a java class to test,
Java class code FirstJavaScript:
import org.python.core.PyFunction;import org.python.core.PyInteger;import org.python.core.PyObject;import org.python.util.PythonInterpreter;public class FirstJavaScript { public static void main(String args[]) { PythonInterpreter interpreter = new PythonInterpreter(); interpreter.execfile("C://Python27//programs//my_utils.py"); PyFunction func = (PyFunction) interpreter.get("adder", PyFunction.class); int a = 2010, b = 2; PyObject pyobj = func.__call__(new PyInteger(a), new PyInteger(b)); System.out.println("anwser = " + pyobj.toString()); }// main}The result is: anwser = 2012
3. Use Java to directly execute python scripts
Create script inputpy
#open files print 'hello' number=[3,5,2,0,6] print number number.sort() print number number.append(0) print number print number.count(0) print number.index(5)
Create a java class and call this script:
import org.python.util.PythonInterpreter;public class FirstJavaScript { public static void main(String args[]) { PythonInterpreter interpreter = new PythonInterpreter(); interpreter.execfile("C://Python27//programs//input.py"); }// main} The result is:
hello [3, 5, 2, 0, 6] [0, 2, 3, 5, 6] [0, 2, 3, 5, 6, 0] 2 3
The above are three Java calls to Python methods, I hope it will be helpful to everyone's learning.