'frozenset' object is not callable
当我尝试在任何上下文中导入
1 2 3 4 | 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 |
知道如何解决这个问题吗? 我只是通过打开终端,运行
我昨天遇到了同样的问题,没有安装Hashlib并尝试使用pip安装它会产生错误。我通过使用easy_install安装它来修复它。
此外,我不得不在Windows上安装Scipy和Microsoft Visual C ++ Compiler for Python 2.7,它们是Hashlib所必需的
在使用hashlib的pip安装失败并使用easy_install重新尝试之后,我遇到了在OSX(El Capitan)上安装hashlib的问题。事件发生后,我只是调用pip时出错,更不用说加载hashlib了。
根本原因是pip将错误的egg目录路径添加到我的sys.path和PYTHONHOME:
1 2 3 | >>> 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'] |
要修复,您可以删除直接引用的文件,在我的情况下:
1 | 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结尾处对一行进行硬编码以删除引用,这是我在其他线程上看到的。
我找到的最佳解决方案是:
https://stackoverflow.com/a/40259767/3689574
它允许使用pip安装hashlib而没有任何问题。
我在Fedora 29上也有同样的信息。
我最后用
1 | dnf install python2-devel |