在python 3.7中安装“ hmac”包时出错

时间:2019-11-11 10:38:55

标签: python-3.x pip hmac

当iam使用以下命令安装HMAC软件包时     pip安装hmac 基本环境中的命令

我尝试更新点子,设置工具。但是所有内容均已更新为最新版本。但没用。

pip安装hmac

错误:

C:\WINDOWS\system32>pip install hmac
Collecting hmac
  Using cached https://files.pythonhosted.org/packages/b2/02/14b2ade413d3f34caffadfa6ed59f3769fe108a78e34931a2cdd1762cb32/hmac-20101005.tar.gz
Requirement already satisfied: setuptools in c:\programdata\anaconda3\lib\site-packages (from hmac) (41.4.0)
Collecting hashlib
  Using cached https://files.pythonhosted.org/packages/74/bb/9003d081345e9f0451884146e9ea2cff6e4cc4deac9ffd4a9ee98b318a49/hashlib-20081119.zip
    ERROR: Command errored out with exit status 1:
     command: 'c:\programdata\anaconda3\python.exe' -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\Admin\\AppData\\Local\\Temp\\pip-install-7dt9idd0\\hashlib\\setup.py'"'"'; __file__='"'"'C:\\Users\\Admin\\AppData\\Local\\Temp\\pip-install-7dt9idd0\\hashlib\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base 'C:\Users\Admin\AppData\Local\Temp\pip-install-7dt9idd0\hashlib\pip-egg-info'
         cwd: C:\Users\Admin\AppData\Local\Temp\pip-install-7dt9idd0\hashlib\
    Complete output (22 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "c:\programdata\anaconda3\lib\site-packages\setuptools\__init__.py", line 18, in <module>
        import setuptools.version
      File "c:\programdata\anaconda3\lib\site-packages\setuptools\version.py", line 1, in <module>
        import pkg_resources
      File "c:\programdata\anaconda3\lib\site-packages\pkg_resources\__init__.py", line 36, in <module>
        import email.parser
      File "c:\programdata\anaconda3\lib\email\parser.py", line 12, in <module>
        from email.feedparser import FeedParser, BytesFeedParser
      File "c:\programdata\anaconda3\lib\email\feedparser.py", line 27, in <module>
        from email._policybase import compat32
      File "c:\programdata\anaconda3\lib\email\_policybase.py", line 9, in <module>
        from email.utils import _has_surrogates
      File "c:\programdata\anaconda3\lib\email\utils.py", line 28, in <module>
        import random
      File "c:\programdata\anaconda3\lib\random.py", line 46, in <module>
        from hashlib import sha512 as _sha512
      File "C:\Users\Admin\AppData\Local\Temp\pip-install-7dt9idd0\hashlib\hashlib.py", line 80
        raise ValueError, "unsupported hash type"
                        ^
    SyntaxError: invalid syntax
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output

1 个答案:

答案 0 :(得分:1)

语法错误是因为报告的行raise ValueError, "unsupported hash type"使用的是python 3.x不支持的语法,这引起了怀疑,您尝试安装的模块不是为python 3.x编写的,而是对于2.x

您要安装的模块是this one

pypi项目中的唯一文件是从2010年10月6日开始,因此已经存在了将近9年,并且检查了项目描述,我们得到:

  

HMAC

     

这是兼容hashlib的hmac库的独立包装   包含在Python 2.5中,因此可以与hashlib一起使用   向后移植旧版本的Python(在2.4上测试)。 Python不需要   2.5或更高版本。

实际上,hmac的编写仅考虑python 2x,此后没有任何更新。您可能想要查找其他库,或者只使用python standard library中的hmac,而无需其他安装。