我在Windows 7上使用带有Java 1.7.0_45的jython 2.7.0。我使用以下Java代码调用我的模块
try{
python.exec("import sys");
python.exec("sys.path.append('c:/Python')");
python.exec("import myModule");
python.set("var1", new PyString(remote));
python.exec("myModule.score(var1)");
} catch (org.python.core.PyException e) {
System.out.println (e.toString());
System.out.println ("\n");
}
myModule.score的Python代码以
开头import json
import urllib.parse
这会导致错误
import urllib.parse
ImportError: No module named parse
我怀疑这与Python的版本和功能之间的格式变化有关。我想知道是否有人知道哪个版本的Python jython 2.7.0使用以及调用urllib.parse的正确语法是什么(在Python 3.5中可以正常工作)。
答案 0 :(得分:2)
根据Python 2.x urlparse
module documentation -
urlparse模块在Python 3中重命名为urllib.parse
所以你应该使用urlparse
模块用于Python 2.7
(或者Jython 2.7,它将在内部使用Python 2.7)。你应该做 -
import urlparse
并使用它。
答案 1 :(得分:1)
Jython 2.7使用Python 2.7标准库。版本号专门设计用于与CPython版本号相关联。