为什么 imp 找不到 "paste" 模块?
Why imp can not find "paste" module?
我遇到一个奇怪的问题:
我安装paste成功了。 "import paste" 也可以。
但是我发现 imp 找不到它。
"imp.find_module('paste')" 总是给出 "ImportError: No module named paste".
Python 2.7.6 (default, Jun 22 2015, 17:58:13)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import imp
>>> imp.find_module('paste')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named paste
>>> import paste
我在三台不同的机器(Ubuntu14.04、Windows 10、Windows XP)上测试过,都有类似的问题。
我已经复制了这种行为。我觉得有点奇怪。文档描述了 find_module()
行为中的一些细微差异,但它似乎没有突出显示与此差异相匹配的任何内容。我怀疑这是一个错误,或者可能是设计使然,但没有很好的记录。
paste
包特别使用 a pth
configuration file。您可以使用 -S
禁用此行为以查看其效果。
$ python -c 'import paste' && echo found
found
$ python -S -c 'import paste' && echo found
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named paste
主要问题似乎是 paste
模块没有 __init__.py
文件
如果您手动创建它,问题就解决了
我遇到一个奇怪的问题:
我安装paste成功了。 "import paste" 也可以。
但是我发现 imp 找不到它。 "imp.find_module('paste')" 总是给出 "ImportError: No module named paste".
Python 2.7.6 (default, Jun 22 2015, 17:58:13)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import imp
>>> imp.find_module('paste')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named paste
>>> import paste
我在三台不同的机器(Ubuntu14.04、Windows 10、Windows XP)上测试过,都有类似的问题。
我已经复制了这种行为。我觉得有点奇怪。文档描述了 find_module()
行为中的一些细微差异,但它似乎没有突出显示与此差异相匹配的任何内容。我怀疑这是一个错误,或者可能是设计使然,但没有很好的记录。
paste
包特别使用 a pth
configuration file。您可以使用 -S
禁用此行为以查看其效果。
$ python -c 'import paste' && echo found
found
$ python -S -c 'import paste' && echo found
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named paste
主要问题似乎是 paste
模块没有 __init__.py
文件
如果您手动创建它,问题就解决了