O Pip não está funcionando: ImportError: nenhum módulo chamado 'pip._internal'


63

Execução pipou pip3resultados com:

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'

Eu tive problemas com isso e desinstalei o pip3, mas quando tento instalá-lo novamente usando

sudo apt-get -y install python3-pip

ele instala, mas, em seguida, executando pip ou pip3, recebo o mesmo erro.

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

2
Eu tenho um problema semelhante após a atualização do pip 9.0.2 para o pip-10.0.0. Ubuntu 16.04LTS aqui.
Dave

2
Você não deve atualizar para o pip 10 no Ubuntu, porque a versão do sistema instalada através do apt é modificada de uma maneira que não é compatível com o pip 10. Consulte github.com/pypa/pip/issues/5221 @Dave
Byte Commander

macOS 10.13.4, mesmo problema após o upgrade para o pip 10
Benjamin R

11
Solução temporária:python3 -m pip install --user <package>
Benjamin R

11
se você tiver easy_install(vem do python-setuptoolspacote), você pode fazer sudo easy_install pip(ou sudo easy_install3 pippara python3-only, etc.)
Marek Sebera

Respostas:


115

Após a atualização pip(ou pip3, neste caso), se ocorrer o seguinte:

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

Forçar uma reinstalação do pip:

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

Verifique a instalação:

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

Agora pip3 install <package>e pip3 install --user <package>(para instalações no nível do usuário) funcionará corretamente.

Nunca deve haver motivo para executar o pip no modo elevado.

(nota: para Python 2.7, substitua pythonpor python3e pippara pip3)

Teve o mesmo problema no macOS também, é um problema comum entre plataformas.


11
funciona como bom para o framboesa também
gtatr

11
você, senhor, é um herói. teve esse problema no solus e funcionou como um encanto.
Cirrusio 18/07/19

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

11
@ endolith Ok, agora você quer usar sudo rm -rf /usr/bin/pip3- limpe primeiro o diretório existente e instale a partir do zero. É um problema de permissões nesse diretório, mas é melhor redefinir nessas circunstâncias, acredito que você sempre pode reinstalar facilmente os pacotes que perder novamente. Se isso não funcionar, também instale a instalação do Python 3 e reinicie.
Benjamin R

11
@endolith Oi, depende de qual é o seu sistema operacional (e distribuição, se Linux). Avise-me e tentarei apontá-lo na direção certa. ps Nós temos tudo sido em sua posição mais vezes do que a maioria de nós gostaria de admitir :)
Benjamin R


10

Eu resolvi isso atualizando o pip via Python, desta forma:

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

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


11
simples e doce
lasec0203

2

Eu tenho o mesmo problema que você agora, descobri que o motivo é que você está trabalhando sem privilégios de superusuário, já que alguns pacotes ou módulos internos do python são instalados com o privilégio de superusuário.

Para que você possa tentar digitando primeiro sudo su, digite sua senha e execute pip install, isso pode ajudar.


3
Você nunca, nunca, precisará executar pipcom permissões elevadas. Use a --userbandeira em vez disso, como em:pip3 install --user <package>
Benjamin R

11
No entanto, quando executo sem a permissão do superusuário, ainda recebo informações como o Traceback (última chamada mais recente): Arquivo "/ usr / local / bin / pip3", linha 7, em <module> \\ do pip._internal import main ImportError: Nenhum módulo chamado 'pip._internal' Você poderia me ajudar a descobrir por que isso sempre acontece? pip3 install --user
Yuke

2
Ok, descobri por que, se from pip._internal import mainocorrer um erro, na minha solução, 1) curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py2) python3 get-pip.py --user --force-reinstalle, em seguida, você poderá executar pipsem a permissão do superusuário. Muito obrigado pelo seu conselho , isso ajuda muito!
Yuke

O prazer é meu! Olha, eu aprendi da maneira mais difícil que ser cuidadoso sobre o uso sudoà toa (destruído meu SO múltipla vezes!)
Benjamin R


2

Aplique estas três etapas:

  1. Ir para /usr/local/binpor terminal
  2. Executar sudo gedit pip
  3. Mude from pip._internal import mainpara from pip import main.

1

Verifique se o pip já está instalado usando

pip3 -V 

ou

pip3 --version

Caso contrário, use este comando para instalá-lo:

sudo apt install python3-pip

Agora você pode usar

python3 -m pip install packageName

instalar pacotes usando pip.


é isso que o OP já é dong.
Nik O'Lai

0

A versão do pip agora é 19.0.1:

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

Mudar from pip._internal import mainparafrom pip import main

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.