1

我正在尝试使用扭曲库创建一个简单的 irc 客户端,并从导入相关模块开始:

from twisted.words.protocols import irc

显示此错误:

no module named words.protocols

我不太明白这个错误,因为我可以直接导入 tiwsted(它在我的 PATH 中),文件系统是这样的:

/usr/local/lib/python2.7/dist-packages/twisted/words/protocols/irc.py

words 和protocols 文件夹都包含一个__init__.py文件,因此它们应该被解释为模块。

如果我更改 /usr/local/lib/python2.7/dist-packages/twisted/words/ 的目录并启动 python 解释器,则此命令运行时不会出错:

from protocols import irc

但是我的最终脚本在这个目录中没有任何关系:/

我不太明白为什么会出现此错误以及如何解决它。

非常感谢您的帮助

编辑

我将所有单词都放入/usr/local/lib而不是经典文件夹中/usr/lib,也许python是查看第二个文件夹而不是第一个文件夹。

我还不知道如何重载这种行为,并希望它不会归结为os.environ['PATH']看起来很脏的覆盖。

EDIT2:/usr/local/lib 文件夹属于 PATH,如以下命令所示:

python -c "import sys; print [ i for i in sys.path if 'local' in i ]"
['/usr/local/lib/python2.7/dist-packages']

所以我还是不明白为什么这个狗屎不打算进口

编辑3

我猜这与脚本名称无关;从我的 debian 终端:

python -c "from twisted.words.protocols import irc"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ImportError: No module named words.protocols
4

0 回答 0