Le pip ne fonctionne pas: ImportError: Aucun module nommé 'pip._internal'

63

Courir pipou pip3résultats avec:

Traceback (most recent call last):
File "/home/myuser/.local/bin/pip", line 7, in <module>
from pip._internal import main
ImportError: No module named 'pip._internal'

J'ai eu des problèmes avec cela, et désinstallé pip3, mais quand j'essaie de l'installer à nouveau en utilisant

sudo apt-get -y install python3-pip

il installe, mais alors en cours d'exécution pip ou pip3 j'obtiens la même erreur.

#which pip3
/home/myuser/.local/bin/pip3
utilisateur3087079
la source
2
J'ai un problème similaire après la mise à niveau de pip 9.0.2 à pip-10.0.0. Ubuntu 16.04LTS ici.
Dave
2
Vous ne devriez pas passer au pip 10 sur Ubuntu, car la version du système installé via apt est modifiée de manière non compatible avec le pip 10. Voir github.com/pypa/pip/issues/5221 @Dave
Byte Commander
macOS 10.13.4, même problème après la mise à niveau vers le pip 10
Benjamin R
1
Solution temporaire:python3 -m pip install --user <package>
Benjamin R
1
si vous avez easy_install(vient du python-setuptoolspaquet), vous pouvez faire sudo easy_install pip(ou sudo easy_install3 pippour python3 seulement, etc.)
Marek Sebera

Réponses:

115

Après la mise à niveau pip(ou pip3, dans ce cas, si):

$ ~ pip3 -V
Traceback (most recent call last):
  File "/usr/local/bin/pip", line 7, in <module>
    from pip._internal import main
ModuleNotFoundError: No module named 'pip._internal'

Forcer une réinstallation de pip:

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 get-pip.py --force-reinstall

Vérifier l'installation:

$ ~ pip3 -V
pip 10.0.1 from /usr/local/lib/python3.6/site-packages/pip (python 3.6)

Now pip3 install <package>et pip3 install --user <package>(pour les installations de niveau utilisateur) fonctionneront correctement.

Il ne devrait jamais y avoir de raison pour laquelle vous devez exécuter pip en mode élevé.

(note: Pour Python 2.7, remplacez simplement pythonpour python3et pippour pip3)

Même problème sur macOS, c’est un problème commun à toutes les plateformes.

Benjamin R
la source
1
fonctionne aussi bien pour la framboise
gtatr
1
vous êtes un héros, monsieur. eu ce problème sur solus et cela a fonctionné comme un charme.
Cirrusio
1
Could not install packages due to an EnvironmentError: [Errno 13] Permission denied: '/usr/bin/pip3'
endolith
1
@endolith D'accord, vous voulez maintenant utiliser sudo rm -rf /usr/bin/pip3- purger d'abord ce répertoire existant, puis installer à partir de zéro. C'est un problème d'autorisations sur ce répertoire, mais il est préférable de réinitialiser dans ces circonstances, je crois, vous pouvez toujours réinstaller facilement les paquets que vous perdez à nouveau. Si cela ne fonctionne pas, installez également votre installation Python 3, puis redémarrez.
Benjamin R
1
@endolith Bonjour, cela dépend de votre système d'exploitation (et de votre distribution, si Linux). Faites le moi savoir et je vais essayer de vous diriger dans la bonne direction. ps Nous avons tous été dans votre position plus de fois que la plupart d'entre nous aimerions l'admettre :)
Benjamin R
13

Cette commande fonctionne aussi, elle réinstalle le pip:

sudo easy_install pip

Carlos Dutra
la source
3
C'est la réponse la plus facile !
Serge Stroobandt
3
Fonctionne comme une merveille sur Ubuntu
user2849789
10

J'ai résolu ce problème en mettant à jour pip via Python, comme ceci:

python2 -m pip install --user --upgrade pip

python3 -m pip install --user --upgrade pip

Carlos Dutra
la source
1
simple et doux
lasec0203
2

J'ai eu le même problème que vous venez tout à l'heure, j'ai trouvé que la raison en est que vous travaillez sans privilège de superutilisateur, car certains packages ou modules Python internes sont installés sous le privilège de superutilisateur.

Vous pouvez donc essayer d’abord en entrant sudo su, puis entrez votre mot de passe et lancez-vous pip install, cela pourrait aider.

Yuke
la source
3
Vous ne devriez jamais, jamais avoir besoin de courir pipavec des permissions élevées. Utilisez le --userdrapeau à la place, comme dans:pip3 install --user <package>
Benjamin R
1
Cependant, lorsque je cours sans autorisation du super-utilisateur, des informations telles que Traceback (l'appel le plus récent en dernier) sont toujours disponibles: Fichier "/ usr / local / bin / pip3", ligne 7, dans <module> \\ de pip._internal import main ImportError: Aucun module nommé 'pip._internal' Pourriez-vous m'aider à comprendre pourquoi cela se produit toujours? pip3 install --user
Yuke
2
Ok, j'ai découvert pourquoi, si une from pip._internal import mainerreur se produisait, dans ma solution, 1) curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py2) python3 get-pip.py --user --force-reinstall, et ensuite vous pouvez exécuter pipsans la permission du superutilisateur, merci beaucoup pour vos conseils , cela aide beaucoup!
Yuke
Mon plaisir! Ecoute, j'ai appris la voie difficile pour faire attention à utiliser sudobon gré mal gré (détruit mon système d'exploitation à plusieurs reprises!)
Benjamin R
2

Appliquez ces trois étapes:

  1. Aller à /usr/local/binpar terminal
  2. Exécuter sudo gedit pip
  3. Changer le from pip._internal import mainen from pip import main.
Sayan De
la source
1

Vérifiez si pip est déjà installé en utilisant

pip3 -V 

ou

pip3 --version

Si non, utilisez cette commande pour l'installer:

sudo apt install python3-pip

Maintenant vous pouvez utiliser

python3 -m pip install packageName

installer des paquets en utilisant pip.

Zacharian
la source
c'est ce que l'OP est déjà dong.
Nik O'Lai
0

La version pip est maintenant 19.0.1:

which pip3
#/home/xxx/.local/bin/pip3
vim /home/xxx/.local/bin/pip3

Changer from pip._internal import mainenfrom pip import main

Alan Lau
la source