汇总java调用python方法_java

本文为大家分享了java调用python方法,供大家参考,具体内容如下

一、在java类中直接执行python语句

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
}

调用的结果是Tue,在控制台显示出来,这是直接进行调用的。

二、在java中调用本机python脚本中的函数

首先建立一个python脚本,名字为:my_utils.py

def adder(a, b):
  return a + b

然后建立一个java类,用来测试,

java类代码 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
}

得到的结果是:anwser = 2012

三、使用java直接执行python脚本

建立脚本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)

建立java类,调用这个脚本:

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
}

得到的结果是:

hello
[3, 5, 2, 0, 6]
[0, 2, 3, 5, 6]
[0, 2, 3, 5, 6, 0]
2
3 

以上就是三种java调用python方法,希望对大家的学习有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索java调用python
java调用python的方法、java 调用python方法、java调用weka学习汇总、java 调用python、python调用java jar包,以便于您获取更多的相关知识。

时间: 2024-12-26 12:13:30

汇总java调用python方法_java的相关文章

如何使用java调用python下载网页

本篇参考:http://tonl.iteye.com/blog/1918245 python版本:2.7 64bit window版本: 下载python:http://www.python.org/getit/ Python 2.7.5 Windows X86-64 Installer (Windows AMD64 / Intel 64 / X86-64 binary [1] -- does not include source),进行安装: 首先编写下面的spider.py脚本: # -*-

java调用python时报错。

问题描述 java调用python时报错. 我在用java调用一个main.py文件时报错,但是在同样的路劲下调用搜狗的.exe文件能运行 public static void main(String[] args) { Runtime rn = Runtime.getRuntime(); Process p = null; try { // PythonInterpreter interpreter = new PythonInterpreter(); // InputStream filep

java调用固有方法

我们先从一个简单的例子开始:一个Java程序调用固有方法,后者再调用Win32的API函数MessageBox(),显示出一个图形化的文本框.这个例子稍后也会与J/Direct一志使用.若您的平台不是Win32,只需将包含了下述内容的C头: #include <windows.h> 替换成: #include <stdio.h> 并将对MessageBox()的调用换成调用printf()即可. 第一步是写出对固有方法及它的自变量进行声明的Java代码:   class ShowM

精致小巧的java相册制作方法_java

本文实例为大家分享了java相册制作方法,供大家参考,具体内容如下   注: 1)html上的图片是静态指定的.当更新了新的图片时必须手工更新.所以使用Servlet读取本地images中的所有图片,动态显示给用户. 2)如果存在中文名的图片,由于get方式无法直接传递中文,会导致出错. 主页面–index.jsp <%@ page language="java" import="java.util.*" pageEncoding="UTF-8&qu

java实现Spring在XML配置java类的方法_java

1. 创建自己的bean文件:beans.xml <?xml version="1.0" encoding="UTF-8"?> <busi-beans> <beans> <bean id="SysHelloImpl" type="com.cxm.test.SysHello"> <desc>test</desc> <impl-class>com.

Java多线程实现异步调用的方法_java

在JAVA平台,实现异步调用的角色有如下三个角色:调用者 提货单   真实数据 一个调用者在调用耗时操作,不能立即返回数据时,先返回一个提货单.然后在过一断时间后凭提货单来获取真正的数据. 去蛋糕店买蛋糕,不需要等蛋糕做出来(假设现做要很长时间),只需要领个提货单就可以了(去干别的事情),等到蛋糕做好了,再拿提货单取蛋糕就可以了. public class Main { public static void main(String[] args) { System.out.println("ma

kettle中使用js调用java类的方法_java

1. 需要事先将jar包 放在kettle 的 libext 目录,kettle 在启动时会自动加载libext 目录下的所有 jar 包. 2. modified java script 步骤要选中 compatibility mode,并将 content 设置为输出的字段. 代码如下: 复制代码 代码如下:     var 变量 = new Packages.包名(参数 );

java jni调用c函数实例分享(java调用c函数)_java

从C/C++到Java,再从Java回到C/C++,今天终于有机会了解了连接Java.C/C++的桥梁--JNI.哈哈!分享一下! 一.简介JNI是Java native interface的简写,可以译作Java原生接口.Java可以通过JNI调用C/C++的库,这对于那些对性能要求比较高的Java程序或者Java无法处理的任务无疑是一个很好的方式. 二.目的:Java代码中调用C/C++代码三.实现:假设我们的Java程序为J2C.java, C程序为J2C.c, Java与C之间的通信函数

java 调用 python(使用jpython)

mavan 本人测试使用以下可用 <dependency> <groupId>org.python</groupId> <artifactId>jython-standalone</artifactId> <version>2.7.0</version> </dependency> 注意使用下面的maven下的包会有问题,不要使用这个 <dependency> <groupId>org.