Pip non funziona: ImportError: nessun modulo denominato 'pip._internal'


63

Esecuzione pipo pip3risultati con:

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'

Ho avuto problemi con questo e ho disinstallato pip3, ma quando provo a installarlo di nuovo usando

sudo apt-get -y install python3-pip

si installa, ma poi eseguendo pip o pip3 ottengo lo stesso errore.

#which pip3
/home/myuser/.local/bin/pip3

2
Ho un problema simile dopo l'aggiornamento da pip 9.0.2 a pip-10.0.0. Ubuntu 16.04LTS qui.
Dave,

2
Non è necessario eseguire l'aggiornamento alla pip 10 su Ubuntu, poiché la versione del sistema installata tramite apt è modificata in un modo non compatibile con la pip 10. Vedi github.com/pypa/pip/issues/5221 @Dave
Byte Commander

macOS 10.13.4, stesso problema dopo l'aggiornamento al pip 10
Benjamin R

1
Soluzione temporanea:python3 -m pip install --user <package>
Benjamin R

1
se hai easy_install(viene dal python-setuptoolspacchetto), puoi farlo sudo easy_install pip(o solo sudo easy_install3 pipper python3, ecc.)
Marek Sebera,

Risposte:


115

Dopo l'aggiornamento pip(o pip3, in questo caso) se si verifica quanto segue:

$ ~ 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'

Forzare una reinstallazione di pip:

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

Verifica installazione:

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

Ora pip3 install <package>e pip3 install --user <package>(per installazioni a livello di utente) funzionerà correttamente.

Non dovrebbe mai esserci alcun motivo per eseguire pip in modalità elevata.

(nota: per Python 2.7, basta sostituire pythonper python3e pipper pip3)

Ha avuto lo stesso problema anche su macOS, è un problema comune su tutte le piattaforme.


1
funziona bene anche per il lampone
gtatr

1
lei, signore, è un eroe. ha avuto questo problema con il solus e ha funzionato come un incantesimo.
cirrusio,

1
Could not install packages due to an EnvironmentError: [Errno 13] Permission denied: '/usr/bin/pip3'
endolith

1
@endolith Okay, ora vuoi usare sudo rm -rf /usr/bin/pip3- elimina prima quella directory esistente, quindi installa da zero. È un problema di autorizzazioni su quella directory, ma è meglio reimpostare in queste circostanze credo, puoi sempre facilmente reinstallare qualunque pacchetto perdi di nuovo. Se non funziona, esegui anche il Nuke della tua installazione di Python 3, quindi riavvia.
Benjamin R,

1
@endolith Ciao, dipende da quale sia il tuo sistema operativo (e distro, se Linux). Fammi sapere e proverò a indicarti la giusta direzione. ps Siamo stati tutti nella tua posizione più volte di quanto la maggior parte di noi voglia ammettere :)
Benjamin R


10

Ho risolto questo aggiornando pip tramite Python, in questo modo:

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

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


1
simple and sweet
lasec0203

2

Ho avuto lo stesso problema proprio ora, ho scoperto che stai lavorando senza il privilegio di superutente poiché alcuni pacchetti o moduli interni di Python sono installati con il privilegio di superutente.

Quindi puoi provare inserendo il pugno sudo su, quindi inserisci la tua password ed esegui pip install, potrebbe aiutare.


3
Non dovresti mai, mai dover correre pipcon autorizzazioni elevate. Usa --userinvece la bandiera, come in:pip3 install --user <package>
Benjamin R

1
Tuttavia, quando corro senza l'autorizzazione del superutente, ho ancora informazioni come Traceback (ultima chiamata più recente): File "/ usr / local / bin / pip3", linea 7, in <module> \\ da pip._internal import main ImportError: nessun modulo chiamato 'pip._internal' Potresti aiutarmi a capire perché questo accade sempre? pip3 install --user
Yuke,

2
Ok, ho scoperto perché, se si from pip._internal import mainverifica un errore, nella mia soluzione, 1) curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py2) python3 get-pip.py --user --force-reinstall, e quindi puoi eseguire pipsenza l'autorizzazione del superutente, Grazie mille per il tuo consiglio , aiuta molto!
Yuke,

Il piacere è tutto mio! Senti, ho imparato a fatica a stare attento sull'uso sudovolente o nolente (distrutto più volte il mio sistema operativo!)
Benjamin R


2

Applicare questi tre passaggi:

  1. Vai al /usr/local/binterminal
  2. Eseguire sudo gedit pip
  3. Cambia from pip._internal import mainin from pip import main.

1

Controlla se pip è già installato usando

pip3 -V 

o

pip3 --version

In caso contrario, utilizzare questo comando per installarlo:

sudo apt install python3-pip

Ora puoi usare

python3 -m pip install packageName

per installare i pacchetti usando pip.


questo è ciò che OP è già dong.
Nik O'Lai,

0

La versione pip ora è 19.0.1:

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

Cambia from pip._internal import maininfrom pip import main

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.