Pip çalışmıyor: ImportError: 'pip._internal' isimli modül yok


62

Çalışan pipveya pip3sonuç:

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'

Bununla ilgili sorunlar yaşadım ve pip3'ü kaldırdım, ancak tekrar kullanmaya çalıştığımda

sudo apt-get -y install python3-pip

yüklemek, ancak daha sonra çalışan pip veya pip3 aynı hatayı alıyorum.

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

2
Pip 9.0.2'den pip-10.0.0'a yükselttikten sonra da benzer bir sorunum var. Ubuntu 16.04LTS burada.
Dave,

2
Apt yoluyla yüklenen sistem sürümü pip 10 ile uyumlu olmayan bir şekilde değiştirildiğinden Ubuntu'da pip 10'a yükseltmemelisiniz. Bkz. Github.com/pypa/pip/issues/5221 @Dave
Byte Commander

macOS 10.13.4, pip 10'a yükselttikten sonra aynı sorun
Benjamin R

1
Geçici geçici çözüm:python3 -m pip install --user <package>
Benjamin R

1
eğer varsa easy_install( python-setuptoolspaketten geliyorsa ), sudo easy_install pip(veya sudo easy_install3 pipsadece python3-sadece, vb.) yapabilirsin
Marek Sebera

Yanıtlar:


115

Yükseltmeden sonra pip(veya pip3bu durumda), aşağıdakiler gerçekleşirse:

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

Pipin yeniden yüklenmesini zorla:

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

Yüklemeyi doğrula:

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

Şimdi pip3 install <package>ve pip3 install --user <package>(kullanıcı seviyesi kurulumları için) düzgün çalışacaktır.

Pip'i yükseltilmiş modda çalıştırmanız için hiçbir neden asla olmamalıdır.

(: Python 2.7 için, sadece yerini unutmayın pythoniçin python3ve pipiçin pip3)

MacOS'ta da aynı problem vardı, bu platformlar arasında yaygın bir sorundur.


1
ahududu için de iyi çalışıyor
gtatr 11:18 '

1
siz bayım, bir kahramansınız. solus bu sorunu vardı ve bir çekicilik gibi çalıştı.
cirrusio

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

1
@endolith Tamam, şimdi kullanmak istediğiniz sudo rm -rf /usr/bin/pip3- önce bu dizini temizleyin, sonra sıfırdan yükleyin. Bu dizinde izinler sorunu var, ancak bu durumlarda sıfırlamak daha iyi olur, kaybettiğiniz paketleri her zaman kolayca yeniden yükleyebileceğinizi düşünüyorum. Bu işe yaramazsa, Python 3 kurulumunuzu da nuke ile yeniden başlatın.
Benjamin R,

1
@endolith Merhaba, bu işletim sisteminizin ne olduğuna (ve eğer Linux ise dağıtıma) bağlıdır. Bana haber verin, sizi doğru yöne yönlendirmeye çalışacağım. ps Hepimiz, kabul etmek istediğimizden daha çok konumunuzdayız :)
Benjamin R


10

Pip'i Python aracılığıyla güncelleyerek çözdüm, şöyle:

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

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


1
basit ve tatlı
lasec0203

2

Şu anda sizinle aynı problemi gördüm, bunun sebebi, bazı iç python paketleri veya modülleri süper kullanıcı imtiyazı altında kurulduğundan, süper kullanıcı imtiyazı olmadan çalışıyor olmanızın nedeni.

Böylece yumruk girerek deneyebilir sudo su, sonra şifrenizi girip çalıştırabilirsiniz pip install, yardımcı olabilir.


3
Asla, asla pipyüksek izinlerle koşmanıza gerek kalmamalı . Kullanım --userolduğu gibi, yerine bayrak:pip3 install --user <package>
Benjamin R

1
Ancak, süper kullanıcı iznim olmadan çalıştığımda, yine de Traceback (en son arama olan son çağrı) gibi bilgileri almaya devam ediyorum : Dosya "/ usr / local / bin / pip3", satır 7, <module> \\ içinde pip._internal import main ImportError: 'pip._internal' adında hiçbir modül yok. Bunun neden her zaman olduğunu anlamama yardım eder misiniz? pip3 install --user
Yuke

2
Tamam, neden olduysa, eğer from pip._internal import mainhata olursa, benim çözümümde, 1) curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py2) python3 get-pip.py --user --force-reinstall, ve sonra pipsüper kullanıcı izni olmadan koşabilirsiniz , Tavsiyeniz için çok teşekkür ederim, çok yardımcı olur!
Yuke,

Zevkle! Bak, sudowilly-nilly'yi kullanma konusunda dikkatli olmanın zor yolunu öğrendim (işletim sistemimi birçok kez tahrip etti!)
Benjamin R


2

Bu üç adımı uygulayın:

  1. /usr/local/binTerminale git
  2. Gerçekleştirmek, yerine getirmek, idam etmek sudo gedit pip
  3. from pip._internal import mainİçine değiştirin from pip import main.

1

Pip zaten kurulu olup olmadığını kontrol edin

pip3 -V 

veya

pip3 --version

Yüklemek için bu komutu kullanmazsanız:

sudo apt install python3-pip

Şimdi kullanabilirsiniz

python3 -m pip install packageName

pip kullanarak paketleri kurmak için.


OP zaten zaten dong budur.
Nik O'Lai

0

Pip sürümü şimdi 19.0.1:

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

değiştir from pip._internal import mainiçinefrom pip import main

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.