一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達式|C/C++|IOS|C#|Swift|Android|JavaScript|易語言|

服務(wù)器之家 - 編程語言 - Java教程 - Java程序中實現(xiàn)調(diào)用Python腳本的方法詳解

Java程序中實現(xiàn)調(diào)用Python腳本的方法詳解

2021-04-18 12:31EliteQing Java教程

這篇文章主要介紹了Java程序中實現(xiàn)調(diào)用Python腳本的方法,結(jié)合實例形式分析了eclipse環(huán)境中使用Java調(diào)用Python腳本的相關(guān)操作技巧與注意事項,需要的朋友可以參考下

本文實例講述了Java程序中實現(xiàn)調(diào)用Python腳本的方法。分享給大家供大家參考,具體如下:

在程序開發(fā)中,有時候需要Java程序中調(diào)用相關(guān)Python腳本,以下內(nèi)容記錄了先關(guān)步驟和可能出現(xiàn)問題的解決辦法。

1、在Eclipse中新建Maven工程;

2、pom.xml文件中添加如下依賴包之后update maven工程;

?
1
2
3
4
5
6
7
8
9
10
<dependency>
  <groupId>org.python</groupId>
  <artifactId>jython</artifactId>
  <version>2.7.0</version>
</dependency>
<dependency>
  <groupId>org.python</groupId>
  <artifactId>jython-standalone</artifactId>
  <version>2.7.0</version>
</dependency>

3、編寫如下測試代碼;

?
1
2
3
4
5
6
7
8
import org.python.util.PythonInterpreter;
public class JpythonScript {
 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];");
 }
}

4、測試:

出現(xiàn)如下錯誤:

console: Failed to install '': java.nio.charset.UnsupportedCharsetException: cp0.
Exception in thread "main" ImportError: Cannot import site module and its dependencies: No module named site
Determine if the following attributes are correct:
  * sys.path: ['...python\\jython\\2.7.0\\Lib', '__classpath__', '__pyclasspath__/']
    This attribute might be including the wrong directories, such as from CPython
  * sys.prefix:***\jython\2.7.0
    This attribute is set by the system property python.home, although it can
    be often automatically determined by the location of the Jython jar file
You can use the -S option or python.import.site=false to not import the site module

5、問題解決:

重構(gòu)代碼如下:

 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import java.util.Properties;
import org.python.util.PythonInterpreter;
public class JpythonScript {
 public static void main(String args[]) {
  Properties props = new Properties();
  props.put("python.home", "path to the Lib folder");
  props.put("python.console.encoding", "UTF-8");
  props.put("python.security.respectJavaAccessibility", "false");
  props.put("python.import.site", "false");
  Properties preprops = System.getProperties();
  PythonInterpreter.initialize(preprops, props, new String[0]);
  PythonInterpreter interpreter = new PythonInterpreter();
  interpreter.exec("days=('mod','Tue','Wed','Thu','Fri','Sat','Sun'); ");
  interpreter.exec("print days[1];");
 }
}

6、編譯成功。

7、解決問題參考:

http://bugs.jython.org/issue2355

補充:jpython拋錯Cannot import site module的解決方法

Exception in thread "main" ImportError: Cannot import site module and its dependencies: No module named site

?
1
2
3
4
5
6
7
8
9
10
public class JpythonScript {
  public static void main(String args[]) {
    Properties props = new Properties();
    props.put("python.import.site", "false");
    Properties preprops = System.getProperties();
    PythonInterpreter.initialize(preprops, props, new String[0]);
    PythonInterpreter interpreter = new PythonInterpreter();
    interpreter.exec("days=('mod','Tue','Wed','Thu','Fri','Sat','Sun'); ");
    interpreter.exec("print days[1];");
  }
?
1
2
3
4
5
6
7
8
9
10
// 進行復(fù)雜類接受處理
Map<String, Object> res = new HashMap<String, Object>();
res.put("1", "Danny");
res.put("2", "Fanny");
PythonInterpreter interpM = new PythonInterpreter();
interpM.execfile("./src/com/DataDeal.py");
PyFunction pyFunctionM = (PyFunction) interpM.get("main", PyFunction.class);
Map<PyObject, PyObject> tableM = new HashMap<PyObject, PyObject>();
tableM.put(new PyString("conf"), PyJavaType.wrapJavaObject(res));
PyDictionary pydM = new PyDictionary(tableM);

希望本文所述對大家java程序設(shè)計有所幫助。

原文鏈接:http://www.cnblogs.com/liinux/p/5481849.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲无线一二三区2021 | 女张腿男人桶羞羞漫画 | 黄色aaa级片| 日本视频高清免费观看xxx | 国产一区二区免费视频 | 国产播放啪视频免费视频 | 视频在线观看高清免费 | 爱情岛永久成人免费网站 | 成人免费视频大全 | 国产欧美日韩不卡一区二区三区 | 欧美一区二区不卡视频 | 国产精品久久久久影院色老大 | 2015小明台湾永久区域免费 | 国产精品www视频免费看 | 国产美女亚洲精品久久久久久 | 欧美日韩免费一区二区在线观看 | 亚洲 欧美 中文 日韩 另类 | pregnantsexxx临盆孕妇 | 色花堂国产精品首页第一页 | 午夜影院费试看黄 | 久久五月综合婷婷中文云霸高清 | 精品免费视在线观看 | 四虎在线最新永久免费 | 糖心hd在线观看 | 国色天香社区在线视频免费观看 | 肉肉小说在线阅读 | 日本免费精品视频 | 护士伦理片 | 成人在线视频观看 | 九九在线精品视频 | 闺蜜的样子小说安沁在线阅读 | 亚洲精品二三区伊人久久 | 色狠狠婷婷97 | 性吟网 | 日本xx高清视频免费观看 | 99热久热这里只精品 | 国产精品亚洲片在线不卡 | 九九成人免费视频 | 国产精品亚洲精品观看不卡 | 好大用力深一点女公交车 | 精品一区二区三区高清免费不卡 |