[Hinweis] Die Lösung für die, bei der Python beim Importieren von Hashlib unter MacOSX zu einem Fehler wird

Einführung

Dieser Artikel richtet sich an Personen, die lediglich unter dem oben genannten Fehler leiden. Es ist ein ziemlich seltener Fall.

Problem

import hashlib Dann gibt es Zeiten, in denen du stirbst.

Ergebnis


Python 2.7.16 (default, Mar  4 2019, 09:01:38) 
[GCC 4.2.1 Compatible Apple LLVM 10.0.0 (clang-1000.11.45.5)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import hashlib
ERROR:root:code for hash md5 was not found.
Traceback (most recent call last):
  File "/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type md5
ERROR:root:code for hash sha1 was not found.
Traceback (most recent call last):
  File "/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type sha1
ERROR:root:code for hash sha224 was not found.
Traceback (most recent call last):
  File "/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type sha224
ERROR:root:code for hash sha256 was not found.
Traceback (most recent call last):
  File "/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type sha256
ERROR:root:code for hash sha384 was not found.
Traceback (most recent call last):
  File "/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type sha384
ERROR:root:code for hash sha512 was not found.
Traceback (most recent call last):
  File "/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type sha512

Dafür gibt es verschiedene Ursachen, wie Pyenv und Homebrew. Beachten Sie zunächst, dass Python unter MacOS nicht Python liest, sondern Python2. Da es in Pyenv angegeben ist, kommt die reale Sache nicht heraus, selbst wenn Sie "welche Python" machen. Das grundlegende python2 wird aufgerufen, ob es mit python2 aliasiert ist. Sie können herausfinden, was es ist, indem Sie which python2 verwenden. Warum gibt es Python3 überhaupt, aber python2 ist in pyenv! Ich spreche darüber.

Nun, das sind nur indirekte Ursachen, und ich kenne die direkte Ursache der Unterbrechung nicht.

Lösung

Upgrade mit Gebräu

Darauf beschränkt.

brew upgrade python@2

Damit ist die Umgebung vorerst recht gut.

Es befindet sich noch in der Lösung, daher werde ich Sie informieren, sobald ein Folgebericht vorliegt.

Recommended Posts

[Hinweis] Die Lösung für die, bei der Python beim Importieren von Hashlib unter MacOSX zu einem Fehler wird
Erstellen Sie eine Umgebung für maschinelles Lernen mit Python unter MacOSX
Lösung für Pip-Installationsfehler [Python] [Mac]
Lösung für "Importfehler: Keine Anforderungen mit Modulnamen"
(Windows) Ursachen und Problemumgehungen für UnicodeEncodeError in Python 3
Ein Sonderfall, bei dem Gurke einen Fehler verursacht
[Python] Prognostizieren Sie die richtige Miete für Wohnungen
Was tun, wenn der Druckbefehl selbst einen Fehler in Mayas Python verursacht?
Ich habe Python zum ersten Mal auf dem Mac ausprobiert.
[Hinweis] Eine Geschichte über Anaconda und VScode, die Probleme mit dem Python-Importfehler haben
Ich erhalte einen Importfehler mit Python Beautiful Soup
Ich habe Python zum ersten Mal mit Heroku ausprobiert
Informationen zur Steuerung von Motoren mit Python auf RaspberryPi
Electron ist die beste Lösung für die plattformübergreifende Entwicklung von Python
Hinweise zum Schreiben von Konfigurationsdateien für Python Hinweis: configparser
Lösung für MacOS Catalina (10.15.2), bei der Python Pip einen OpenSSL-Fehler in einer Umgebung verursacht, die von einem älteren Betriebssystem aktualisiert wurde
[Python] für Anweisungsfehler
[Hinweis] Import von Dateien in das übergeordnete Verzeichnis in Python
Ich habe einen Fehler bekommen, als ich versucht habe, Luigi parallel in Windows zu verarbeiten, aber die Lösung
So erstellen Sie einfach eine Umgebung, in der Python-Code auf Jupyter ausgeführt werden kann, ohne die lokale Umgebung zu verschmutzen