Mam problem, gdy próbuję w jakikolwiek sposób używać pip. Używam Ubuntu 16.04.4
Powinienem powiedzieć, że już go używałem i nigdy nie miałem żadnego problemu, ale zaczynając od dzisiaj, kiedy używam dowolnego polecenia, zawsze otrzymuję ten sam błąd (jako przykład za pomocą pip --upgrade
).
Traceback (most recent call last):
File "/usr/local/bin/pip", line 7, in <module>
from pip._internal import main
ImportError: No module named _internal
Próbowałem zrobić sudo apt-get remove python-pip
, sudo apt-get install python-pip
ale nic się nie zmieniło.
/usr/local/lib/pythonX.X/site-packages
poprzedza/usr/lib/pythonX.X/site-packages
w twoim$PATH
.python -m pip
wszystkiego działa dobrze. Poza tym usunąłem plik/usr/local/bin/pip
, teraz wywołującpip -V
powrótpip 8.1.1 from /usr/lib/python2.7/dist-packages (python 2.7)
. Wszystko wydaje się działać zgodnie z oczekiwaniami.sudo -H python3.7 get-pip.py --force-reinstall
Odpowiedzi:
To zrobiło to dla mnie:
Środowisko: OSX && Python zainstalowany przez brew
źródło
pyenv
, ale w jakiś sposób stłumiłem systemowy Python, któryvim
używa. To sprawiło, że wszystko było tam, gdzie powinno, a teraztaskwiki
znów działa. Uff!Odpowiedź askUbuntu działa.
W przypadku pip2.7 możesz najpierw
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
, a następniepython2.7 get-pip.py --force-reinstall
ponownie zainstalować pip.Problem rozwiązany. Działa również dla Python3.
źródło
apt-get install python-pip
który nie działa w 16.04.4, a ty musisz skorzystać z binarnych instalatorów blobów?apt-get remove python-pip-whl
U mnie działa to rozwiązanie:
lub użyj sudo dla podwyższonych uprawnień (
sudo python3 get-pip.py --force-reinstall
).Oczywiście możesz też użyć
python
zamiastpython3
;)Źródło
źródło
Zapoznaj się z tą listą problemów
działa dla mnie pod Mac OS
Bo
python3
może spróbowaćsudo easy_install-3.x pip
zależy od wersji Pythona 3.x. Lubpython3 -m pip install --user --upgrade pip
źródło
sudo easy_install-3.4 pip
lub podobnie.W pliku „/ usr / local / bin / pip” zmień
from pip._internal import main
nafrom pip import main
źródło
Ten problem może być spowodowany tym, że zwykły użytkownik nie ma uprawnień dostępu do pliku py pakietów.
1. użytkownik root może uruchomić „pip list”
2. inny zwykły użytkownik nie może uruchomić „pip list”
[~]$ pip list Traceback (most recent call last): File "/usr/bin/pip", line 7, in <module> from pip._internal import main ImportError: No module named pip._internal
Sprawdź uprawnienia do pliku pip py.
[root@]# ll /usr/lib/python2.7/site-packages/pip/ 合計 24 -rw------- 1 root root 24 6月 7 16:57 __init__.py -rw------- 1 root root 163 6月 7 16:57 __init__.pyc -rw------- 1 root root 629 6月 7 16:57 __main__.py -rw------- 1 root root 510 6月 7 16:57 __main__.pyc drwx------ 8 root root 4096 6月 7 16:57 _internal drwx------ 18 root root 4096 6月 7 16:57 _vendor
rozwiązanie: logowanie użytkownika root i uruchomienie
chmod -R 755 /usr/lib/python2.7
napraw ten problem.
źródło
Aby uzyskać kompletność, właśnie napotkałem ten problem z „najnowszym Ubuntu” ... v18.04 ... i naprawiłem go w ten sposób:
python3 -m pip install --upgrade pip
(Zauważ, że konieczne było określenie,
python3
ponieważ odwołuje się do Pythona 3.6.9.python
Polecenie w tym samym systemie odwołuje się do Pythona 2.7.17. Ponieważ jest to najwyraźniej instalacja ogólnosystemowa, napotkała uprawnienie ["nie sudo" ...] błąd, ale nie miało to znaczenia, ponieważ i tak było to niewłaściwe. Miałem problem zpip3
.)źródło
no such option: --uprade
na Twoją komendę - więc pobiegłempython3 -m pip install pip
i zadziałało :)Widziałem ten problem, gdy
PYTHONPATH
ustawiono uwzględnienie wbudowanegosite-packages
katalogu. Ponieważ Python szuka tam automatycznie, jest niepotrzebny i można go usunąć.źródło
export PYTHONPATH=""
żeby uruchomić pip.PYTHONPATH
. Następnie, kiedy aktywowałem moje wirtualne środowisko, nigdy nie wyłączało ono mojej PYTHONPATH, co oznaczało, że odnalazło poziom systemu,pip
a nie ten w moim virtualenv.Właśnie napotkałem ten sam problem iw moim przypadku okazuje się, że jest to konflikt między instalacją Pythona w moim virtualenv a pythonem dla całej witryny (Ubuntu). Rozwiązuje to dla mnie uruchomienie pip w ten sposób, aby wymusić użycie poprawnej instalacji Pythona (w moim vortualenv):
zamiast
Zrozumiałem to, gdy próbowałem podążać za niektórymi odpowiedziami, które sugerują ponowną instalację pip, a wynik błędu, który otrzymałem, wskazywał na istniejącą ścieżkę biblioteki Pythona dla całej witryny, chociaż aktywowałem mój virtualenv. Warto spróbować przed usunięciem i ponowną instalacją.
źródło
python3 -m pip
rozwiązuje również ten problem, prawdopodobnie dlatego, żepython
ma uprawnienia do wykonywania i nie potrzebuje pip, aby mieć uprawnienie + x, ponieważ po prostu ładuje plik i nie wykonuje go.Czy używasz python2 czy python3? Następujące polecenie może być inne!
python3 -m pip --version
aby sprawdzić, czy masz zainstalowany pip.python3 -m pip install --upgrade pip
.sudo apt-get install python3-pip
i zrób to jeszcze raz.źródło
Prawdopodobnie jest to spowodowane konfliktem wersji, spróbuj to uruchomić, jakoś usunie starszy pip.
źródło
python-pip
pakiet został zainstalowany na poziomie dystrybucji iget-pip.py
był używany dla wersji specyficznej dla użytkownika,pip
która również znajdowała się w$PATH
. Isudo apt-get remove
Dpython-pip
pakiet (2,7) i wykorzystał jeden w moim ~ / .local / bin zamiast. Nie ma więcej komunikatów o błędach.Dla mnie
rozwiązał problem. Odniesienie
źródło
Naprawiłem ten błąd, uruchamiając następujące polecenia:
Spowoduje to usunięcie wcześniej zainstalowanego pip i ponowne zainstalowanie go. Dzięki :)
źródło
Następujące rozwiązanie rozwiązało problem na moim komputerze dla python2.7 "$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py", a następnie "$ sudo python2.7 get-pip .py --force-reinstalacja "
źródło
Tylko dla bieżącego użytkownika:
easy_install --user pip
lub
python -m pip install --upgrade --user pip
Drugi może dać
/usr/bin/python: No module named pip
nawet jeśliwhich pip
znajdzie moduł o nazwie pip. W takim przypadku wypróbujeasy_install
źródło
Napotkałem ten sam błąd w systemie Windows, gdy próbowałem zainstalować pakiet przez pip3:
Traceback (most recent call last): File "d:\anaconda\lib\runpy.py", line 193, in _run_module_as_main "__main__", mod_spec) File "d:\anaconda\lib\runpy.py", line 85, in _run_code exec(code, run_globals) File "D:\Anaconda\Scripts\pip3.6.exe\__main__.py", line 5, in <module> ModuleNotFoundError: No module named 'pip._internal'
Mój Python jest instalowany przez Anacondę. Rozwiązałem ten problem, ponownie instalując pip przez conda:
Następnie pip wraca do normy.
źródło
Nic nie działało, ale tylko jedno: użyłem sudo przed poleceniem i działa dobrze.
źródło
Mam ten sam problem w moim środowisku wirtualnym po aktualizacji instalacji Pythona z 3.6 do 3.7, ale tylko na wentylacji globalnej pip działa dobrze, aby go rozwiązać, dezaktywuję i usuwam moje środowisko wirtualne po ponownym utworzeniu i teraz jest w porządku, na venv:
a po odtworzeniu środowiska wirtualnego. Używam systemu Mac OS 10.11 i Pythona 3
źródło
(W systemie Windows) nie jestem pewien, dlaczego tak się dzieje, ale moja konfiguracja PYTHONPATH wskazywała na c: \ python27, gdzie został zainstalowany python. w połączeniu z virtualenv spowodowało to wspomniany błąd.
rozwiązano, usuwając jednocześnie zmienną PYTHONPATH env
źródło
moje rozwiązanie: pierwszy krok jak większość odpowiedzi:
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py python2.7 get-pip.py --force-reinstall
po drugie, dodaj miękki link
źródło
To polecenie działa dla mnie.
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py python get-pip.py --force-reinstaluj --user
źródło
możesz go najpierw usunąć i zainstalować ponownie, będzie dobrze. dla centów:
źródło
Naprawiłem ten problem przez
działało to nawet dla Pythona 2.7, niesamowite ...
źródło
Moje rozwiązanie polega na dodaniu
import pip
do skryptu połączonego zpip/pip3
poleceniami.Po pierwsze, otwórz plik (np.
/usr/local/bin/pip
) Za pomocą ulubionego edytora tekstu i trybu sudo. Na przykład używamsudo vim /usr/local/bin/pip
do otwierania pliku skryptu.Otrzymasz plik w następujący sposób:
import re import sys from pip._internal import main if __name__ == '__main__': sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) sys.exit(main())
Następnie wstaw oświadczenie
import pip
tuż przedfrom pip._internal import main
rozwiązaniem problemu.źródło
Często wynika to z używania pip do „aktualizacji” zainstalowanego w systemie pip i / lub posiadania wielu instalacji pip przez użytkownika. Moim rozwiązaniem było wyczyszczenie wielu zainstalowanych pipsów użytkownika, ponowne zainstalowanie pip repo, a następnie „pip install --user pip” jak powyżej.
Zobacz: https://github.com/pypa/pip/issues/5599, aby uzyskać oficjalną pełną dyskusję i rozwiązania problemu.
źródło
Wypróbowałem następujące polecenie, aby rozwiązać problem i zadziałało:
źródło