>  기사  >  백엔드 개발  >  파이썬 자바 호출

파이썬 자바 호출

巴扎黑
巴扎黑원래의
2016-11-26 10:05:241347검색

jar 包下载  

<dependency>  
    <groupId>jython</groupId>  
    <artifactId>jython</artifactId>  
    <version>2.1</version>  
 </dependency>

 

 

实例

package com.curiousby.python.demo;  
  
import org.python.core.PyFunction;  
import org.python.core.PyInteger;  
import org.python.core.PyObject;  
import org.python.util.PythonInterpreter;  
  
/** 
 * @author baoyou E-mail:curiousby@163.com 
 * @version 2016年8月1日 下午1:05:36 
 *<pre class="brush:php;toolbar:false"> 
 <dependency> 
    <groupId>jython</groupId> 
    <artifactId>jython</artifactId> 
    <version>2.1</version> 
 </dependency> 
 *
* desc: ... */ public class PythonByJava { public static void main(String[] args) { PythonInterpreter interpreter = new PythonInterpreter(); interpreter.execfile("I:\\cache\\ea-ws\\DemoJava\\conf\\Test1.py"); PyFunction func = (PyFunction)interpreter.get("sum",PyFunction.class); int a = 1, b = 2 ; PyObject pyobj = func.__call__(new PyInteger(a), new PyInteger(b)); System.out.println(pyobj.toString()); } }

 结果:

3

其他两种 调用方法:

a) 直接执行Python脚本代码

PythonInterpreter interpreter = new PythonInterpreter();    
interpreter.exec("days=(&#39;mod&#39;,&#39;Tue&#39;,&#39;Wed&#39;,&#39;Thu&#39;,&#39;Fri&#39;,&#39;Sat&#39;,&#39;Sun&#39;); ");   ///执行python脚本

 

b)使用Runtime.getRuntime()执行脚本文件  

Process proc = Runtime.getRuntime().exec("python  D:\\demo.py");    
proc.waitFor();


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.