When I attempt to import hashlib
in any context, it throws this error:
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
Any idea how I can resolve this? I'm generating this error simply by opening up Terminal, running python
and then typing import hashlib
.
Python frozenset() Frozen set is just an immutable version of a Python set object. While elements of a set can be modified at any time, elements of the frozen set remain the same after creation. Due to this, frozen sets can be used as keys in Dictionary or as elements of another set.
Overview. In Python, frozenset() is a function that takes an iterable and returns its frozenset object counterpart. A frozenset object is an immutable, unordered data type.
Using generator : def get_frozenset_elements(frozen_set): for i in frozen_set: yield i gen_ = get_frozenset_elements(frozenset("Benyamin")) next(gen_) next(gen_) next(gen_) ... Using iterator : iter_ = iter(frozenset("Benyamin")) next(gen_) next(gen_) next(gen_) ...
frozenset() in Python This function accepts iterable object as input parameter.
I had the same problem yesterday, Hashlib wasn't installed and trying to install it using pip would give that error. I fixed it by installing it using easy_install instead.
Also I had to install Scipy and Microsoft Visual C++ Compiler for Python 2.7 on Windows, they were required for Hashlib
I had this problem installing hashlib on OSX (El Capitan), after a failed pip install of hashlib and re-attemp using easy_install. After the event, I had errors just calling pip, let alone loading hashlib.
Root cause was pip adding a bad egg directory path to my sys.path and PYTHONHOME:
>>> 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']
To fix, you can delete the file referenced directly, in my case:
rm /Library/Python/2.7/site-packages/hashlib-20081119-py2.7-macosx-10.11-intel.egg
I tried deleting just the directory reference, but after exploring here to identify the site.py and site_packages.py file belonging to my Current python version, which defines your paths, then looked at where site_packages.py was loading its paths from, it appears that the specific reference is added directly by pip? so the only workaround I could think of was to potentially hard code a line at the end of site.py to remove the reference, which I've seen on other threads.
The best solution I found is this: https://stackoverflow.com/a/40259767/3689574
It allows to install hashlib with pip with no problems.
I had this same message on Fedora 29.
I ended up installing with easy_install hashlib
, however, I had to do the following steps first:
dnf install python2-devel
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With