我安装了PyCrypto和Paramiko (在它们各自的目录中)
python3 setup.py install两个都安装成功了。但是,当我尝试
import paramiko 在3.2.5解释器中,我得到了以下错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/paramiko/__init__.py", line 64, in <module>
from transport import SecurityOptions, Transport
ImportError: No module named transport我不知道它为什么要这样做,因为我在文件夹中签了名,transport.py模块就在那里。为什么会有一个ImportError
发布于 2013-08-12 08:20:37
看起来Paramiko正在尝试一个相对的导入,在Python 3中这种形式已经不被识别了。见Python 3中的更改。Paramiko中的导入语句应该是
from .transport import SecurityOptions, Transport(注意前导点),或
from paramiko.transport import SecurityOptions, Transport您可以修复paramiko源代码,也可以将/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/paramiko添加到您的PYTHONPATH中。两个人都不喜欢。
在运行2to3之前运行了python3 setup.py install工具吗?不过,我不确定这是否能解决这个问题,因为这个工具在这里使用的方式可能无法区分相对导入还是绝对导入。
请检查Paramiko论坛(如果有),并针对Paramiko提交一个bug,以确保Python 3的兼容性。
编辑
看来你已经做过提交错误报告了。
https://stackoverflow.com/questions/18179156
复制相似问题