关于python:ImportError:没有名为Crypto.Cipher的模块

from Crypto import Random

ImportError: No module named Crypto

问题起因:

  1. 由于工作需要,需要切换python2.7和python3的版本;
  2. 本来环境中的vscode已经发配置好python3的解析器,无发导入Python2。实际上,mac自带python2.7的解析器,在vscode中运行的时候,指定python2或者python3就可以了;

解决问题的思路:

  1. 模块导入的有问题。
  2. 得先查到pip2 和pip3 安装包的路径,可以通过下面一个脚本实现。直接查找包的安装路径。路径分别为:/Users/zhongyue3/Library/Python/2.7/lib/python/site-packages, /Users/zhongyue3/Library/Python/3.8/lib/python/site-packages/

import Crypto

print(Crypto.file)

  1. 问题是,mac中虽然自带python2.7,但是没有pip2,需要安装,https://blog.csdn.net/weixin_43376075/article/details/115375141 --- mac安装pip2
  2. 可以通过这两个查询pip的版本,python3 -V pip3 -V,, python2 -V pip2 -V
  3. 之后需要运行2的时候,带上2,需要运行3的时候带上3,即可
  4. mac电脑,自带的python2的安装路径为 /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/

最终解决的命令是:

  1. 先安装pip2:curl https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py sudo python2 get-pip.py
  2. 校验pip2正常:pip2 -V
  3. pip2 install pycryptodome
  4. 就解决了上述的问题

参考链接:

https://blog.csdn.net/qq_42512064/article/details/80977336

https://stackoverflow.com/questions/36724566/import-error-no-module-named-crypto-on-mac-pycrypto-is-up-to-date

//www.greatytc.com/p/e5206e976ae4

https://www.codenong.com/19623267/

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容