import urllib.parse returns "ImportError:No module named parse" for jython 2.7.0
import urllib.parse returns "ImportError:No module named parse" for jython 2.7.0
我在 Windows 上使用 jython 2.7.0 和 Java 1.7.0_45 7. 我用以下 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 中工作正常)。
Jython 2.7 使用 Python 2.7 标准库。版本号专门设计用来与CPython版本号相关联。
根据Python2.xurlparse
module documentation-
The urlparse module is renamed to urllib.parse in Python 3
所以您应该为 Python 2.7
使用 urlparse
模块(或者 Jython 2.7 ,这将在内部使用 Python 2.7)。你应该做 -
import urlparse
并照原样使用它。
我在 Windows 上使用 jython 2.7.0 和 Java 1.7.0_45 7. 我用以下 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 中工作正常)。
Jython 2.7 使用 Python 2.7 标准库。版本号专门设计用来与CPython版本号相关联。
根据Python2.xurlparse
module documentation-
The urlparse module is renamed to urllib.parse in Python 3
所以您应该为 Python 2.7
使用 urlparse
模块(或者 Jython 2.7 ,这将在内部使用 Python 2.7)。你应该做 -
import urlparse
并照原样使用它。