-
可能的原因1:安装的不是对应python版本的库,首先需要确认大版本是一致的,下载的库名中cp36代表python3.6,其它同理。
-
可能的原因2:这个是我遇到的情况(下载的是对应版本的库,然后仍然提示不支持当前平台)
因为我这边环境是不能联网的,所以只能离线安装,在 https://pypi.org/project/pycryptodome/#files 找到文件,选了一个py36的提示如下:
后来有选了几个都是提示,决心找到解决办法。
pycryptodome-3.10.1-pp36-pypy36_pp73-manylinux2010_x86_64.whl is not a supported wheel on this platform.
解决方法:
查看自己的python支持的版本
>>> import pip
>>> print(pip.pep425tags.get_supported())
[('cp36', 'cp36m', 'manylinux1_x86_64'), ('cp36', 'cp36m', 'linux_x86_64'),
('cp36', 'abi3', 'manylinux1_x86_64'), ('cp36', 'abi3', 'linux_x86_64'),
('cp36', 'none', 'manylinux1_x86_64'), ('cp36', 'none', 'linux_x86_64'),
('cp35', 'abi3', 'manylinux1_x86_64'), ('cp35', 'abi3', 'linux_x86_64'),
('cp34', 'abi3', 'manylinux1_x86_64'), ('cp34', 'abi3', 'linux_x86_64'),
('cp33', 'abi3', 'manylinux1_x86_64'), ('cp33', 'abi3', 'linux_x86_64'),
('cp32', 'abi3', 'manylinux1_x86_64'), ('cp32', 'abi3', 'linux_x86_64'),
('py3', 'none', 'manylinux1_x86_64'), ('py3', 'none', 'linux_x86_64'),
('cp36', 'none', 'any'), ('cp3', 'none', 'any'), ('py36', 'none', 'any'),
('py3', 'none', 'any'),('py35', 'none', 'any'), ('py34', 'none', 'any'),
('py33', 'none', 'any'), ('py32', 'none', 'any'),
('py31', 'none', 'any'), ('py30', 'none', 'any')]
通过这里可以发现我上面测试的几次的文件名格式是不支持的,找到正确的版本安装,就安装成功了!!!
[root@localhost soft]# python3.6 -m pip install pycryptodome-3.10.1-cp35-abi3-manylinux1_x86_64.whl
Processing ./pycryptodome-3.10.1-cp35-abi3-manylinux1_x86_64.whl
Installing collected packages: pycryptodome
Successfully installed pycryptodome-3.10.1
[root@localhost soft]# python3
Python 3.6.4 (default, Sep 1 2020, 18:11:20)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-23)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from Crypto.Cipher import AES
>>> cipher = AES.new("1122334455667788".encode(), AES.MODE_ECB)
>>> print(cipher)
<Crypto.Cipher._mode_ecb.EcbMode object at 0x7f135152eb00>