文档章节

Java调用Python程序并向Python传值

Gavin_W
 Gavin_W
发布于 2017/07/03 09:58
字数 289
阅读 81
收藏 0

最近用到Java向Python传值,找了好多的方法都是直接调用的程序,向python传值的少之又少 要不用了就报错说我缺少什么东西  要不就是没有权限什么的 很苦恼  经过翻阅资料  找到了很多的资料 最后还是解决了


	public static  void runbat(int jobId) throws IOException, InterruptedException {
		
		
            //需传入的参数
            String  a =String.valueOf(jobId);
            
            System.out.println("start;;;" + a);
            //设置命令行传入参数
            String property1 = System.getProperty("user.dir");
    		String pythonpath = property1 + "\\config\\winddaydata.py";	
            String[] args = new String[] { "python", pythonpath, a};
            Process pr = Runtime.getRuntime().exec(args);

            BufferedReader in = new BufferedReader(new InputStreamReader(pr.getInputStream()));
            String line;
            while ((line = in.readLine()) != null) {
              //  line = decodeUnicode(line);
                System.out.println(line);  //python打印流
               
            }
            in.close();
            pr.waitFor();
            System.out.println("end");  
	}

这是在java的代码只需要将python的文件名 还有参数  还有python的地址写入进去即可

下面是python的代码

print ("winddaydata", sys.argv[0])     
    for i in range(1, len(sys.argv)):   //遍历传进的参数
        print ("par", i, sys.argv[i])
        jobId=sys.argv[i]    //传入的参数

最后jobid就是我要传进的参数,这边就可以在后面直接用了  

希望可以帮到大家。。。。。也算是一点经验

© 著作权归作者所有

共有 人打赏支持
Gavin_W
粉丝 7
博文 28
码字总数 6776
作品 0
朝阳
程序员
微服务跨语言 gRPC 之 Java & Python

本文旨在说明 spring-boot-starter-grpc 框架与 Python 之间跨语言 RPC 调用的友好实现。阅读本文前,请详细阅读 wiki文档,以便了解 的工作原理。 Java Server & Client 模块说明: sample...

Anoyi
09/29
0
0
多语言跨平台远程过程调用【Avro】

开始 Avro是Apache的Hadoop家族的项目之一。具有性能高、基本代码少和产出数据量精简等特点。不过这是他们宣传广告,我最近也分别研究了Avro和Protobuf。基本的测试代码,不吐不快。 安装 Ja...

震秦
2013/08/07
0
7
在Java工程中调用Python代码

Python是一门好用的脚本语言,底层基于C实现,快速且简单。使用python可以说是站在巨人肩膀上编程,使得程序员更专注于业务及逻辑,而不是被人学烂的语言工具。但是团队合作时候,就会有一些...

辉煌霸猪
09/12
0
0
为什么Python成了开发AI的主流语言?Java系列、Ruby等编程语言不行吗?

导读 说道开发AI的语言,很多人说,不是Python吗?没错,Python是可以开发AI,但是不知道你们有没有想过,真的就只有Python才可以开发AI吗? 其实,像Java、Ruby也是开发AI很好的选择,但是为...

柯西带你学编程
05/29
0
0
python和java哈希值区分

欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答、求职一站式搞定! 对商业智能BI、大数据分析挖掘、机器学习,python,R等数据领域感兴...

天善智能
06/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

03-《Apache Tomcat 9 User Guide》之安装

1.Introduction There are several ways to set up Tomcat for running on different platforms. The main documentation for this is a file called RUNNING.txt. We encourage you to refe......

飞鱼说编程
21分钟前
1
0
Hbase 概述及特点

1、Hbase概述 HBase是一种构建在HDFS之上的分布式、面向列的存储系统。在需要实时读写、随机访问超大规模数据集时,可以使用HBase。 尽管已经有许多数据存储和访问的策略和实现方法,但事实上...

PeakFang-BOK
47分钟前
0
0
TortoiseGit(乌龟git)保存用户名密码的方法

windows下比较比较好用的git客户端有2种: 1. msysgit + TortoiseGit(乌龟git) 2. GitHub for Windows github的windows版也用过一段时间,但还是不太习惯。所以目前仍然青睐与msysgit+乌龟g...

simpower
今天
1
0
Java并发编程:volatile关键字解析

volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生...

engeue
今天
2
0
通过ajax访问远程天气预报服务

http://www.webxml.com.cn/zh_cn/index.aspx 更改wsdl文件 打开文件将15行,51行,101行去掉 然后把文件复制到c盘 然后在桌面上面就生成了文件 将文件打成jar包 package cn.it.ws.weather;...

江戸川
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部