Java调用python脚本
Java调用python脚本
最近也是刚开始学python,所以这里写了一个简单的小方法用Java来调用python脚本。后期再进行更新。
1、Java启动程序的方法
在Java中提供了两种方法来启动其他程序:
1. 使用Runtime的exec()方法
2. 使用ProcessBuilder的start()方法 。
本文中使用exec()方法来调用python脚本。
2、首先准备一个python程序
小编这里准备了一个最简单的python程序——单词反转。
直接上代码吧。
def reverse(str_list,start,end):while start<end:str_list[start], str_list[end] = str_list[end],str_list[start]start +=1end -=1setence = ' Hello, how are you? Fine. '
str_list = list(setence)
i=0
while i<len(str_list):if str_list[i] !=' ':start = iend = start + 1while (end < len(str_list)) and str_list[end] !=' ':end +=1reverse(str_list, start, end -1)#先把每个单词进行反转i = endelse:i += 1
str_list.reverse()#然后再把整个字符串进行反转
print(''.join(str_list))
3、通过Runtime.getRuntime()开启进程来执行脚本文件
Java代码如下:
//导入读取文件的包
import java.io.BufferedReader;
import java.io.InputStreamReader;
//定义类名
public class JavaConPython{//主函数入口public static void main(String[] args) {//定义新的字符串String[] arguments = new String[] {"python", "E:\\练习\\python\\单词反转.py"};try {//执行命令调用程序Process process = Runtime.getRuntime().exec(arguments);//取得命令结果的输出流,用一个读输出流类去读,用缓冲器读行 BufferedReader in = new BufferedReader(new InputStreamReader(process.getInputStream()));String line = null; ////直到读完为止 while ((line = in.readLine()) != null) { System.out.println(line); } in.close(); //调用Process.waitFor()来等待命令执行结束,获取执行结果int re = process.waitFor(); System.out.println(re);//抛出异常} catch (Exception e) {e.printStackTrace();} }
}
4、实现结果
python中运行的结果:
eclipse中运行的结果:
在此需要注意的一点,java代码中的process.waitFor()返回值为0表示我们调用python脚本成功,返回值为1表示调用python脚本失败,这和我们通常意义上见到的0与1定义正好相反。
Java调用python脚本相关推荐
- java 调用python脚本过程_通过Java调用Python脚本
在进行开发的过程中,偶尔会遇到需要使用Java调用Python脚本的时候,毕竟Python在诸如爬虫,以及科学计算等方面具有天然的优势.最近在工作中遇到需要在Java程序中调用已经写好的Python程 ...
- java执行python返回null_[转]java调用python脚本以及通过Process.waitFor()直接调用python模块返回错误代码1的一种解决办法...
常见的java调用python脚本方式 通过jython提供的类库实现 通过Runtime.getRuntime()开启进程来执行脚本文件 通过jython提供的类库实现 通过jython实现的话,我 ...
- Java调用Python脚本:轻松实现两种语言的互操作性
Java和Python都是非常流行的编程语言,它们都有自己的优点,但也有自己的局限性.在编写应用程序时,我们可能需要使用两种语言来共同完成一项任务.在这种情况下,Java需要调用Python脚本来解决 ...
- java执行python脚本_通过Java调用Python脚本
在进行开发的过程中,偶尔会遇到需要使用Java调用Python脚本的时候,毕竟Python在诸如爬虫,以及科学计算等方面具有天然的优势.最近在工作中遇到需要在Java程序中调用已经写好的Python程 ...
- windows10中java调用python脚本
文章目录 1. windows基础环境 1.1 java安装 1.1.1 下载jdk(版本可自选) 1.1.2 安装jdk 1.1.3 配置java环境变量 1.2 python安装 1.2.1 py ...
- linux下java调用python脚本,java - 在Linux Terminal中以编程方式从Java调用python脚本 - 堆栈内存溢出...
我正在开发一个Java应用程序,用于检查源文件中的补丁程序(是否存在). 用于检测补丁程序更改的核心逻辑位于python脚本[titled'patch.py']中,并且我的Java应用程序与此Py ...
- Java调用python脚本,进程长时间卡住问题
Java项目调用python脚本,执行时python脚本一直卡在某一步骤,不继续执行,经查找发现是python代码中加了 print 打印语句导致缓冲区满,我的方法是直接去除 print 打印就好了, ...
- 使用GraalVM实现java调用python脚本
背景说明 在很多场景下,我们都有从java调用脚本的功能,常用的有groovy脚本,pyhon脚本和js等.在上篇中,列举了java调用pyhton脚本的几种方案,并最终选取了JEP的方式,但是随着业 ...
- Java 调用 Python 脚本
实际工程项目中可能会用到 Java 和 python 两种语言结合进行,这样就会涉及到一个问题,就是怎么用 Java 程序来调用已经写好的 python 脚本呢,一共有四种方法可以实现: 1.在 ja ...
最新文章
- Mtk Android编译命令
- Android keymaster4.0- device集成笔记
- Exp6 信息收集与漏洞扫描 20164314
- java五子棋用到的类_JAVA五子棋用到的知识点以及方法类有哪些?
- 一个产品经理的自述:我在腾讯工作的这一年(转)
- package org.apache.hadoop.conf does not exist解决
- MVC4发布到IIS7报404错误
- 前端框架 Bootstrap 5.0 alpha 发布
- 大数据中数据挖掘的基本步骤
- javascript生成m位随机数
- 在ubuntu下安装openjdk
- 用cmd 查看本机的IP地址
- 运用Excel实现描述性统计分析
- 模型调参(一):weight decay(权重衰减)【“权重衰减”也叫“L1/L2正则化”】【权重衰减系数:正则项系数 λ】【对参数w有影响、对偏置b没影响】【偏置不加正则】
- 中国首台超级计算机“天河一号,我国首台超级计算机“天河一号”超负荷运行...
- 记录--WebSocket 原理
- 计网PPT 第八章 互联网上的音频和视频服务
- 安防厂商网络摄像机常用rtsp地址及端口
- FCPX:镜头故障抖动效果TOBK TWITCH for Mac
- 来了!中国IT就业市场,最景气的岗位非它莫属!
热门文章
- mongodb高可用性架构---Replica Set
- 中消协:警惕以治病为噱头的保健品虚假宣传行为
- Appium之创建、连接夜神模拟器
- Linux系统搭建FTP服务器
- 异常详细信息: System.ArgumentException: 不支持关键字: “metadata”。
- 参加“北向峰会”后对SOC之感言
- [tomcat7源码学习]结束Bootstrap进入Catalina
- 更好的内存管理-jemalloc (redis 默认使用的)
- jota-time 练习
- listview改变选中行字体颜色