• 解释Crypto模块怎么就这么"皮"?No module named "Crypto"


     

     

    python版本:python3.6,系统:win7

    1.pip install crypto;

    会安装很多包:chardet, certifi, urllib3, idna, requests, pyyaml, Naked, shellescape, crypto

    2.安装成功后,提示没有该模块,那就去python3的安装目录..Lib/site-package中查看是否有Crypto文件夹

    这时你会看到有crypto文件夹,将其重命名为Crypto即可;

    3.又出现另一个提示说没有Crypto.Cipher,“ModuleNotFoundError:No module named ‘Crypto.Cipher’”;这时需要卸载pycrypto:

    pip uninstall pycrypto,然后安装pycryptodome,pip install pycryptodome,即可。

      这是我把我的windows环境弄乱了,才会用上面这种解决办法。真正的解决办法是下面这个,我这么操作了一下:

    1
    2
    3
    4
    pip uninstall crypto pycryptodome
    pip install pycryptodome
    你会发现site-packages下的该模块的目录名已经是大写了-Crypto
    但是pycharm不识别这个模块,造成了很多不便

      在python中想要使用crypto相关的库,网上的解决方法一大片,但是大多都是废话,能用的没有几个,而且能安装的没有几个。

    首先我告诉大家为什么不能安装,其次告诉一种真正的方法。

    python版本:python3.6,系统:win7;目的:crypto安装

    1.pycrypto、pycrytodome和crypto是一个东西,crypto在python上面的名字是pycrypto,它是一个第三方库,但是已经停止更新三年了,所以不建议安装这个库;

    2.windows下python3.6安装也不会成功!

    这个时候pycryptodome就来了,它是pycrypto的延伸版本,用法和pycrypto是一模一样的;

    所以,我现在告诉大家一种解决方法--直接安装:pip install pycryptodome

    3.但是,在使用的时候导入模块是有问题的,这个时候只要修改一个文件夹的名称就可以完美解决这个问题,

    PythonPython36Libsite-packages,找到这个路径,下面有一个文件夹叫做crypto,将小写c改成大写C就ok了。

    我在我的linux生产环境上,版本是3.6,直接安装pycryptodome,第三方目录下的包直接就是:Crypto、pycryptodome-3.6.6.dist-info,连名字都不用改。

  • 相关阅读:
    微信小程序常用的几个UI组件库
    华为云车联网解决方案
    华为云智慧物流解决方案
    如果让你手写个栈和队列,你还会写吗?
    开发了那么多项目,你能自己手写个健壮的链表出来吗?
    失去循环标记的Python,我这样实现跳出外层循环
    Python面试的一些心得,与Python练习题分享
    快速理解spark-on-k8s中的external-shuffle-service
    是时候考虑让你的Spark跑在K8S上了
    Kubernetes增强型调度器Volcano算法分析
  • 原文地址:https://www.cnblogs.com/php-linux/p/11858912.html
Copyright © 2020-2023  润新知