web-dev-qa-db-fra.com

pip3: mauvais interprète: aucun fichier ou répertoire de ce type

J'essaie d'installer des dépendances à l'aide de la commande pip3

scénario actuel:

Dev$ which python
/Users/Dev/anaconda/bin/python

Dev$ which python3
/usr/local/bin/python3


Dev$ pip --version
pip 10.0.1 from /usr/local/lib/python2.7/site-packages/pip (python 2.7)

Dev$ pip3 --version
-bash: /usr/local/bin/pip3: /usr/local/opt/python3/bin/python3.6: bad 
interpreter: No such file or directory

Je ne sais pas pourquoi ma commande pip3 ne fonctionne pas. 

J'ai essayé des choses comme ça:

brew link --overwrite python 
6
floss

Vous avez toute une série d'installations Python différentes, plus au moins une ancienne installation Python que vous avez supprimée.

Des situations comme celle-ci expliquent précisément pourquoi exécuter pip ou pip3 directement n'est plus recommandé, en faveur de:

python3 -m pip install whatever

Cela garantit que vous exécutez de manière absolument positive la pip qui correspond à tout ce que python3 signifie, alors que pip3 signifie simplement que vous exécutez la pip qui accompagne some Python 3.x, qui peut être l’un des différents 'ai installé.

Ou encore mieux, utilisez des environnements virtuels. Vous pouvez donc compter sur le fait que python et pip sont les commandes de l'environnement actuellement actif et ne vous inquiétez même pas de leur signification pour l'ensemble du système.


Mais si vous voulez savoir comment vous êtes entré dans ce pétrin et comment le réparer:

Votre commande python3 provient probablement d’un Python Homebrew (vous pouvez vérifier; ls -l /usr/local/bin/python3 et voir s’il s’agit d’un lien symbolique vers quelque chose dans /usr/local/Cellar/python).

Votre commande pip3 provient d'un Python 3 qui n'existe pas. Très probablement, vous avez installé un autre Python 3, qui a écrasé le pip3 de l’Homebrew Python 3, puis vous l’a désinstallé, en laissant une pip cassée derrière.

La chose la plus simple à faire est de simplement rm /usr/local/bin/pip3. Ensuite, en supposant que vous souhaitiez que votre Homebrew Python soit votre valeur par défaut pour python3 et pip3, rétablissez la commande brew link python. Si des avertissements ou des erreurs s'affichent, il vous reste d'autres problèmes à résoudre. Sinon, /usr/local/bin/pip3 devrait maintenant être le Homebrew 3.6 pip, et which pip3 devrait choisir /usr/local/bin/pip3 et tout irait bien jusqu'à la prochaine fois que vous installerez un autre Python 3 et écraserez un tas de choses.

Une meilleure solution consisterait à choisir un moyen d’installer Python - qu’il s’agisse d’installateurs Anaconda, Homebrew, python.org ou autre - et l’utiliser de manière cohérente. Désinstallez tout, réinstallez celui que vous voulez réellement et ne touchez plus jamais les autres. (Malheureusement, vous serez toujours bloqué par le système Apple Python 2.7, mais si vous utilisez uniquement la version 3.x, cela n'aura pas d'importance.)

23
abarnert

veuillez vérifier votre version python sur votre environnement actuel, assurez-vous que c'est python

0
hao