import urllib.parse返回" ImportError:没有名为parse"的模块对于jython 2.7.0

时间:2015-08-17 17:18:12

标签: java python python-2.7 jython-2.7

我在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中可以正常工作)。

2 个答案:

答案 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版本号相关联。