首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“‘frozenset”对象不可调用

“‘frozenset”对象不可调用
EN

Stack Overflow用户
提问于 2015-12-04 07:53:11
回答 5查看 20.8K关注 0票数 19

当我试图在任何上下文中导入hashlib时,它会引发以下错误:

代码语言:javascript
复制
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来生成这个错误。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2016-04-01 17:19:04

昨天我也遇到了同样的问题,没有安装Hashlib,尝试使用pip安装它会导致错误。我通过使用easy_install安装它来修复它。

另外,我还必须在Windows上安装they和MicrosoftVisualPython2.7的C++编译器,它们是Hashlib所必需的。

票数 13
EN

Stack Overflow用户

发布于 2016-05-18 14:01:12

我在OSX (El Capitan)上安装hashlib时遇到了这个问题,在使用easy_install安装hashlib和re失败之后。事件发生后,我只调用pip就出错了,更不用说加载hashlib了。

根本原因是向我的sys.path和PYTHONHOME添加了一个坏蛋目录路径:

代码语言:javascript
复制
>>> import sys
>>> print sys.path
['', '/Library/Python/2.7/site-packages/pip-8.1.2-py2.7.egg', '/Library/Python/2.7/site-packages/hashlib-20081119-py2.7-macosx-10.11-intel.egg', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages', '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload', '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/PyObjC', '/Library/Python/2.7/site-packages']

要修复,您可以直接删除引用的文件,在我的例子中:

代码语言:javascript
复制
rm /Library/Python/2.7/site-packages/hashlib-20081119-py2.7-macosx-10.11-intel.egg

我尝试只删除目录引用,但在研究了这里以标识属于当前python版本的site.py和site_packages.py文件(该版本定义了您的路径)之后,查看了site_packages.py加载路径的位置,似乎是通过pip直接添加了特定的引用?因此,我能想到的唯一解决办法是在site.py末尾编写一行代码,以删除引用,我在其他线程上已经看到了这一点。

票数 3
EN

Stack Overflow用户

发布于 2016-10-26 10:29:26

我找到的最好的解决方案是:https://stackoverflow.com/a/40259767/3689574

它允许在没有问题的情况下使用pip安装hashlib。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34083381

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档