[英]ImportError: No module named 'Crypto' on a Mac
情况如下:
mymachine:Systemtest user$ pip3 install --upgrade pycrypto
Requirement already up-to-date: pycrypto in /usr/local/lib/python3.6/site-packages
mymachine:Systemtest user$ echo $PYTHONPATH
/Users/user/Private/Space/Server:/Users/user/Private/Space/Client:/usr/local/lib/python3.6/site-packages
mymachine:Systemtest user$ python3 -c "import Crypto"
Traceback (most recent call last):
File: "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'Crypto'
这是Mac的一些特殊东西吗? 如何确保python3
使用Crypto
模块?
python3 -m "import Crypto"
指示Python解释器导入名为“ import Crypto”的模块。 要测试导入模块,只需传递名称本身,例如
python3 -m Crypto
在此处执行相同操作会产生此错误:
python3 -m Crypto
/usr/local/opt/python3/bin/python3.6: No module named Crypto.__main__; 'Crypto' is a package and cannot be directly executed
这是在告诉您已安装了Crypto(它找到了它)—但是它不是一个模块,而是一个软件包。 python3 -m <module>
导入提供的模块并尝试执行它 。 程序包不能直接运行,因此将无法运行。
您可以通过传递导入命令来检查导入(就像您最初所做的那样,但是带有-c
选项),例如
python3 -c "import Crypto"
更新:问题是旧版本的pycrypto
安装pycrypto
。 删除并重新安装它可以解决此问题。
使用-m
开关,您应该运行python3 -m Crypto
。 无需导入。 或者运行python3 -c "import Crypto"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.