社区
脚本语言
帖子详情
Java与Python混合调用请教
reallovefly
2010-01-28 08:36:15
我用python开发了一组GUI界面,另外一个同志用java实现了应用主框架,现在要将这些GUI界面集成到主框架里面去。不知道在java里面该如何调用?简而言之,就是java代码里面如何调用一个外部的.py文件。请给出一个简单的演示例子。谢谢。
...全文
1699
19
打赏
收藏
Java与Python混合调用请教
我用python开发了一组GUI界面,另外一个同志用java实现了应用主框架,现在要将这些GUI界面集成到主框架里面去。不知道在java里面该如何调用?简而言之,就是java代码里面如何调用一个外部的.py文件。请给出一个简单的演示例子。谢谢。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
19 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hyaliteye
2011-12-14
打赏
举报
回复
最后怎么处理的?楼主?
雨落
2011-07-25
打赏
举报
回复
哎,请问java怎么调用ubuntu中的.py文件,不要用jython,因为我的python脚本中有个import的类jython是没有的,但是那个又是必须的!谢谢
hp0632
2011-07-21
打赏
举报
回复
我也想,这样做,python太牛了,但是公司项目里没有用到python,哎,郁闷,看看吧,以后自己做个东西可以试试
ccq5721974
2010-09-24
打赏
举报
回复
有谁有完整的Java调用Python项目
notax
2010-03-01
打赏
举报
回复
不如用jython直接调用java的swing GUI 库,jython 的好处就是可以调用java的class
http://wiki.python.org/jython/SwingWorker
reallovefly
2010-03-01
打赏
举报
回复
或者notax兄可否给出一条道,采用哪种方式写的python图形界面,在Java下可以调用?
reallovefly
2010-03-01
打赏
举报
回复
引用 12 楼 notax 的回复:
不行,wxpython 是 用cpython 开发的库, 用jython解释不了
肯定可以解释的,我的帖子说的最后一句话意思就是:
我采用Eclipse环境+Pydev,可以直接在Eclipse下面完成wxpython写的图形脚本的调用和执行。
而Eclipse是典型的Java环境,所以说明java下可以调用wxpython库。
但确实不知道机关在什么地方?踌躇阿。。。
notax
2010-03-01
打赏
举报
回复
不行,wxpython 是 用cpython 开发的库, 用jython解释不了
reallovefly
2010-03-01
打赏
举报
回复
先谢谢各位XD的回复,我的问题明确一下:
我的java文件代码为:
package test;
import org.python.util.PythonInterpreter;
import org.python.core.*;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
PythonInterpreter interp = new PythonInterpreter();
interp.execfile("E:\\CodeEclipse\\CallPython\\src\\test\\test.py");
}
}
我的python代码为:
#!/bin/env python
# -*- coding: cp936 -*-
import wx
class MyFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, -1, "My Frame", size=(300, 300))
panel = wx.Panel(self, -1)
panel.Bind(wx.EVT_MOTION, self.OnMove)
wx.StaticText(panel, -1, "Pos:", pos=(10, 12))
self.posCtrl = wx.TextCtrl(panel, -1, "", pos=(40, 10))
def OnMove(self, event):
pos = event.GetPosition()
print event
self.posCtrl.SetValue("%s, %s" % (pos.x, pos.y))
if __name__ == '__main__':
app = wx.PySimpleApp()
frame = MyFrame()
frame.Show(True)
app.MainLoop()
具体的情况描述如下:
我的python应用是一个GUI应用,引用了wxpython图形开发库,因此调用时会报找不到wx文件。
事实上,我已经安装了wxpython库,是否还需要别的配置?
另外采用java调用python图形界面肯定是可以过的,我用Eclipse+Pydev可以直接在Eclipse环境下启动python图形应用。
reallovefly
2010-02-02
打赏
举报
回复
[Quote=引用 9 楼 notax 的回复:]
这个test.py比较奇怪,在上面的程序里没有用到他,
很奇怪喔,
我在这里试,这个程序还是蛮听话的喔
[/Quote]
我就是引用了一个jpython.jar的库。你那得配置?
reallovefly
2010-02-01
打赏
举报
回复
Exception in thread "main" traceback (innermost last)
(no code object) at line 0
IOError : File not found - test.py( ~0 歹克)
notax
2010-02-01
打赏
举报
回复
这个test.py比较奇怪,在上面的程序里没有用到他,
很奇怪喔,
我在这里试,这个程序还是蛮听话的喔
notax
2010-01-30
打赏
举报
回复
呵呵, 你把错误的提示报出来看看
reallovefly
2010-01-30
打赏
举报
回复
[Quote=引用 5 楼 notax 的回复:]
写了个试试,java调用jython PythonInterpreter,很方便oh
// <------------------my_utils.py-------------
def adder(a, b):
return a + b
//------------------my_utils.py------------->
// <------------------B.java--------------------
import org.python.util.PythonInterpreter;
import org.python.core.*;
public class B {
public static void main(String args[]) {
PythonInterpreter interp = new PythonInterpreter();
interp.execfile("my_utils.py");
PyFunction func = (PyFunction)interp.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());
}
}
//------------------B.java-------------------->
[/Quote]
采用这个方法我尝试了一下,可是仍然报IO错误。
错误提示是interp.execfile("my_utils.py" );还有一堆乱字符。很奇怪。
thy38
2010-01-28
打赏
举报
回复
调用py文件不是问题,问题是你想怎样在Java和Python之间交换数据。
notax
2010-01-28
打赏
举报
回复
写了个试试,java调用jython PythonInterpreter,很方便oh
//<------------------my_utils.py-------------
def adder(a, b):
return a + b
//------------------my_utils.py------------->
//<------------------B.java--------------------
import org.python.util.PythonInterpreter;
import org.python.core.*;
public class B {
public static void main(String args[]) {
PythonInterpreter interp = new PythonInterpreter();
interp.execfile("my_utils.py");
PyFunction func = (PyFunction)interp.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());
}
}
//------------------B.java-------------------->
reallovefly
2010-01-28
打赏
举报
回复
而且我不希望通过将py文件写到一个batch文件中,再把batch用py2exe打包成.exe文件,最后用java应用调用exe这种搞法,呵呵。
reallovefly
2010-01-28
打赏
举报
回复
[Quote=引用楼主 reallovefly 的回复:]
我用python开发了一组GUI界面,另外一个同志用java实现了应用主框架,现在要将这些GUI界面集成到主框架里面去。不知道在java里面该如何调用?简而言之,就是java代码里面如何调用一个外部的.py文件。请给出一个简单的演示例子。谢谢。
[/Quote]
我的主框架与GUI之间的参数传递不多,就只有几个参数。可以用确定格式的文件,也可以考虑像批处理一样在调用时候传递参数。
现在的python都是在Eclipse下完成(安装有pydev),因此java调用python的技术肯定是通的。
还请不吝赐教。给个例子先。
winbsd
2010-01-28
打赏
举报
回复
java
web
调用
python
算法_
请教
怎么用
java
远程
调用
python
? 多谢
请问如何用
java
远程
调用
python
? 谢谢!本帖最后由 blackkettle 于 2015-05-07 13:00:41 编辑比如有一台机器A上安装了
python
,另一台机器B要用
java
调用
A上的
python
的某个函数,输入数据在B机器上,所有的计算在A机器完成,结果返回给B机器。请问这个怎么实现?希望大侠能给一个简单的demo,非常感谢!------解决思路----------...
python
调用
c 动态库_
Python
调用
C/C++动态链接库的方法详解
python
怎么
调用
c的动态链接库
Python
调用
C/C++动态链接库的需分享 在自动化测试过程中,难免会遇到语言
混合
使用的情况,这不,小编们也遇到了。初步决定采用Robot Framework作为自动化测试框架后,其支持
Java
和
Python
,而
Python
作为主流的语言,怎么能放弃使用它的机会^_^。
python
怎么
调用
c++的动态链接库win的dll没有统一的格式的,你用C/C++写的wra...
无缝融合:使用
Python
和 PyFFmpeg 合并视频
刚接到offer,有没有在这工作的大佬,或者也是今年入职的小伙伴,我是
JAVA
开发岗的,想多了解了解。佬们,我是留子,然后现在找到一个大厂实习,我本来是七月毕业的,但是我学校可以让我们延迟毕业证的时间来。心态炸裂啊,导师不让实习,连小论文也不让搞了,就让做他的狗屁横向项目,夏天来了,实验室没空调,热成狗。2024应届毕业生,全日制专科,期间或国家励志奖学金,三好学生,优秀毕业生,已考上统招全日制本科,肯。先说下楼主的情况,双非硕士,后端
java
开发方向,目前在杭州一家国企实习,目前已经实习了2个月了,先。
自学
Python
的最佳选择《
Python
可以这样学》正式出版
资深
Python
爱好者董付国老师编著的经典图书《
Python
可以这样学》正式出版,500页78万7千字巨献,清华大学出版社官网已挂出有关信息,应该这几天很快就可以通过官网购买了,预计一周内将在亚马逊、京东、当当、互动出版网、淘宝等各大网上书店全面上架。以
Python
3.5.x为载体,同时适用于
Python
3.4.x和
Python
3.6.x,超过1000个演示性代码片段和200多个案例大放送,除了
Python
高级语法和内置对象高级用法,还介绍了几十个扩展库在不同领域的应用,并完整介绍了“边讲边练类课程课
【SpringBoot小型超市商品管理系统】(免费领源码+演示录像)|可做计算机毕设
Java
、
Python
、PHP、小程序APP、C#、爬虫大数据、单片机、文案
该系统主要内容有商品类别管理、商品库存管理、入库信息管理、销售订单管理等功能,实现了对超市商品的全面管理。它简化了商品管理流程,提高了工作效率,有助于超市管理者实时掌握商品动态,优化库存结构,降低运营成本。 本论文将总体分析小型超市商品需求,再从不同角度分析具体功能需求,运用
Java
相关技术,采用MySQL数据库,讨论如何设计并实现一个小型超市商品管理系统。
脚本语言
37,743
社区成员
34,212
社区内容
发帖
与我相关
我的任务
脚本语言
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
复制链接
扫一扫
分享
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
试试用AI创作助手写篇文章吧
+ 用AI写文章