如何在Java中调用Python代码Jython(原JPython),是一个用Java语言写的Python解释器 。在没有第三方模块的情况下,通常选择利用Jython来调用Python代码,它是一个开源的JAR包,你可以到官网下载一个HelloPython程序importorg.python.util.PythonInterpreter;publicclassHelloPython{publicstaticvoidmain(String[]args){PythonInterpreterinterpreter=newPythonInterpreter();interpreter.exec("print('hello')");}}什么是PythonInterpreter?它的中文意思即是“Python解释器” 。我们知道Python程序都是通过解释器来执行的 , 我们在Java中创建一个“解释器”对象,模拟Python解释器的行为,通过exec("Python语句")直接在JVM中执行Python代码,上面代码的输出结果为:hello在Jvm中执行Python脚本interpreter.execfile("D:/labs/mytest/hello.py");如上,将exec改为execfile就可以了 。需要注意的是,这个.py文件不能含有第三方模块,因为这个“Python脚本”最终还是在JVM环境下执行的 , 如果有第三方模块将会报错:javaImportError:Nomodulenamedxxx仅在Java中调用Python编写的函数先完成一个hello.py代码:defhello():return'Hello'在Java代码中调用这个函数:importorg.python.core.PyFunction;importorg.python.core.PyObject;importorg.python.util.PythonInterpreter;publicclassHelloPython{publicstaticvoidmain(String[]args){PythonInterpreterinterpreter=newPythonInterpreter();interpreter.execfile("D:/labs/hello.py");PyFunctionpyFunction=interpreter.get("hello",PyFunction.class);//第一个参数为期望获得的函数(变量)的名字,第二个参数为期望返回的对象类型PyObjectpyObject=pyFunction.__call__();//调用函数System.out.println(pyObject);}}上面的代码执行结果为:Hello即便只是调用一个函数,也必须先加载这个.py文件,之后再通过Jython包中所定义的类获取、调用这个函数 。如果函数需要参数,在Java中必须先将参数转化为对应的“Python类型”,例如:__call__(newPyInteger(a),newPyInteger(b))a,b的类型为Java中的int型,还有诸如:PyString(Stringstring)、PyList(Iteratoriter)等 。详细可以参考官方的api文档 。包含第三方模块的情况:一个手写识别程序这是我和舍友合作写的一个小程序,完整代码在这里:,界面上引用了corejava上的一段代码 。Python代码是舍友写的 , 因为在Python程序中使用了第三方的NumPy模块,导致无法通过Jython执行 。下面这个方法纯粹是个人思路,没有深入查资料 。核心代码如下:importjava.io.*;classPyCaller{privatestaticfinalStringDATA_SWAP="temp.txt";privatestaticfinalStringPY_URL=System.getProperty("user.dir") "\\test.py";publicstaticvoidwriteImagePath(Stringpath){PrintWriterpw=null;try{pw=newPrintWriter(newFileWriter(newFile(DATA_SWAP)));}catch(IOExceptione){e.printStackTrace();}pw.print(path);pw.close();}publicstaticStringreadAnswer(){BufferedReaderbr;Stringanswer=null;try{br=newBufferedReader(newFileReader(newFile(DATA_SWAP)));answer=br.readLine();}catch(FileNotFoundExceptione){e.printStackTrace();}catch(IOExceptione){e.printStackTrace();}returnanswer;}publicstaticvoidexecPy(){Processproc=null;try{proc=Runtime.getRuntime().exec("python" PY_URL);proc.waitFor();}catch(IOExceptione){e.printStackTrace();}catch(InterruptedExceptione){e.printStackTrace();}}//测试码publicstaticvoidmain(String[]args)throwsIOException,InterruptedException{writeImagePath("D:\\labs\\mytest\\test.jpg");execPy();System.out.println(readAnswer());}}实际上就是通过Java执行一个命令行指令 。
Java项目怎样让另一个类中的代码跟这个类里面的代码一起执行1、在Java项目中新建一个类 。然后在调用类中先进行被调用类实例化,然后通过实例化的对象访问 。
2、在Java项目中新建一个类,将该类中需要被调用的方法设置为静态(static),加了static后,就可以用类名直接调用 。然后在调用类中直接通过类名进行访问 。3、这样就可以让Java项目另一个类中的代码跟这个类里面的代码一起执行了 。
java用什么调用js代码在Java中直接调用js代码
不能调用浏览器中定义的js函数 , 会抛出异常提示ReferenceError: “alert” is not defined 。
在Java中绑定js变量
在调用engine.get(key);时,如果key没有定义,则返回null
java jsp页面怎么写java类?怎么调用java代码?jsp中写java代码成为scriptletjava工程调用代码,写在%%之间就可以了 。
Scriptlet是包含在%和%之间java工程调用代码的Java代码 , 在Web容器处理JSP页面时执行 , 通常会产生输出,并将输出发送到客户java工程调用代码的输出流里 。Scriptlet除了不能定义类和方法、不能用import引入类外,可以包含任何有效的Java代码 。(Java类在Jsp外部定义,可用page指令的import属性引入 , 也可以Java Bean的形式使用 。Java中的方法必须在类内定义 , 但Jsp允许使用声明定义方法 。窗体(GUI)设计代码在Jsp中无效) 。
Scriptlet例程java工程调用代码:
%@ page contentType="text/html; charset=gb2312" %
html
head
titleJSP基本语法/title
/head
body
【java工程调用代码 java调用程序】 h1Scriptlet示例页面/h1
table border="1"
caption乘法口诀表/caption
%-- 在网页中嵌入Java代码的主要方法 --%
%
for(int i=1; i=9; i) {
int j=1;
//out是JSP的一个内部对象,print方法用于向客户端输出数据
out.println("tr");
for(; j=i; j) {
out.print("td"j"*"i"="j*i"/td");
}
for(;j=9;j) {
out.print("td /td");
}
out.println("/tr");
}
%
/table
/body
/html
Java语言里面如何调用函数,请给出一段调用函数的代码?public class HelloWord{
//自定义的输出函数,打印字符串helloword!
public void printHelloWord() {
System.out.println("helloword!");
}
public static void main(String args[]){
//创建对象实例
HelloWordhw = new HelloWord();
//通过对象实例调用自己的成员函数
hw.printHelloWord() ;
}
}
你看看满意不?
Java如何调用C语言代码 ?需要JNI(Java Native Interface)技术即,本地调用接口 。
可以将C、C、VB等其他编程语言编制的程序代码封装成对用户不可见的底层class 。
而在java程序中仅声明其方法名和参数表以及返回值即可 。
大致的操作过程请百度 JNI 选择第一个搜索结果即可找到 。
关于java工程调用代码和java调用程序的介绍到此就结束了 , 不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。
推荐阅读
- word如何分段截取文字,word里分段
- flutter设置启动时间,Flutter启动白屏
- 华为鸿蒙os系统升级p40p,p40pro鸿蒙升级
- 襄阳卖水果直播带货,襄阳卖水果直播带货的地方
- linux中字符替换命令 linux 字符替换
- 叶县二高公众号怎么交费,叶县二高全称
- 怎样微信注册小程序商家,怎样把微信小程序游戏禁掉
- 显卡和主板怎么连,显卡怎么与主板连接
- 共享干衣机小程序开发工具,共享干衣机收费标准