当我试图在任何上下文中导入hashlib
时,它会抛出以下错误:
File "<stdin>", line 1, in <module>
File "build/bdist.macosx-10.11-intel/egg/hashlib.py", line 115, in <module>
"""
TypeError: 'frozenset' object is not callable
你知道我该怎么解决吗?我只需打开终端,运行python
,然后键入import hashlib
,就产生了这个错误。
Tags:
我找到的最佳解决方案是: https://stackoverflow.com/a/40259767/3689574
它允许使用pip安装hashlib,没有问题。
在hashlib的pip安装失败后,我在OSX(El Capitan)上安装hashlib时遇到了这个问题,并使用easy_install重新尝试。事件发生后,我在调用pip时出错,更不用说加载hashlib了。
根本原因是pip向my sys.path和PYTHONHOME添加了一个坏蛋目录路径:
要修复此问题,可以删除直接引用的文件,在我的情况下:
我尝试只删除目录引用,但是在研究了here以标识属于我当前python版本的site.py和site_packages.py文件(它定义了您的路径),然后查看site_packages.py从何处加载其路径之后,似乎特定引用是由pip直接添加的?因此,我唯一能想到的解决办法是在site.py的末尾可能硬编码一行以删除引用,我在其他线程中也看到过这种情况。
昨天我遇到了同样的问题,没有安装Hashlib,如果尝试使用pip安装它,就会出现这个错误。我用easy_install安装了它。
我还必须在Windows上安装Scipy和Microsoft Visual C++ Compiler for Python 2.7,Hashlib需要它们
相关问题 更多 >
编程相关推荐