[Note] La solution pour celle où Python devient une erreur avec import hashlib sur MacOSX

introduction

Cet article s'adresse à ceux qui souffrent simplement de l'erreur ci-dessus. C'est un cas assez rare.

problème

import hashlib Ensuite, il y a des moments où vous mourez.

résultat


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

Il y a plusieurs causes à cela, comme Pyenv et l'homebrew. Tout d'abord, notez que Python sur MacOS ne va pas pour lire python, mais pour lire python2. Puisqu'il est spécifié dans Pyenv, la vraie chose ne sort pas même si vous faites quel python. Le python2 de base est appelé s'il est aliasé avec python2. Vous pouvez découvrir ce que c'est en utilisant which python2. Pourquoi y a-t-il Python3 en premier lieu, mais python2 est dans pyenv! Je parle de ça.

Eh bien, ce ne sont que des causes indirectes, et je ne connais pas la cause directe de la rupture.

Solution

Mise à niveau avec infusion

Limité à cela.

brew upgrade python@2

Avec cela, l'environnement est assez bon pour le moment.

Il est toujours en cours de résolution, je vous préviendrai dès qu'il y aura un rapport de suivi.

Recommended Posts

[Note] La solution pour celle où Python devient une erreur avec import hashlib sur MacOSX
Créer un environnement d'apprentissage automatique à l'aide de Python sur MacOSX
Solution pour l'erreur d'installation de pip [Python] [Mac]
Solution pour "Erreur d'importation: aucun module nommé demandes"
(Windows) Causes et solutions de contournement pour UnicodeEncodeError dans Python 3
Un cas particulier où le pickle provoque une erreur
[Python] Prédire le loyer approprié pour les appartements
Que faire si la commande d'impression elle-même provoque une erreur dans le python de Maya
J'ai essayé Python sur Mac pour la première fois.
[Note] Une histoire sur Anaconda et VScode ayant des problèmes avec une erreur d'importation de python
J'obtiens une erreur d'importation avec Python Beautiful Soup
J'ai essayé python pour la première fois avec heroku
Informations pour contrôler les moteurs avec Python sur RaspberryPi
Electron est la meilleure solution pour le développement multi-plateforme de Python
Remarques sur l'écriture des fichiers de configuration pour Python Remarque: configparser
Solution pour MacOS Catalina (10.15.2), où python pip provoque une erreur OpenSSL dans un environnement mis à jour à partir d'un ancien système d'exploitation
[Python] pour une erreur d'instruction
[Note] Importation de fichiers dans le répertoire parent en Python
J'ai eu une erreur lorsque j'ai essayé de traiter luigi en parallèle dans Windows, mais la solution
Comment créer facilement un environnement où le code Python peut s'exécuter sur Jupyter sans polluer l'environnement local