Ako opraviť ModuleNotFoundError: V Pythone 3 neexistuje modul s názvom „pip“

ModuleNotFoundError: No module named 'pip'znamená, že interpret Pythonu, ktorý spúšťa váš príkaz, nemôže importovať balík pip. Príčinou je zvyčajne jedna zo štyroch vecí: pip nebol nikdy bootstrapovaný, používate inú inštaláciu Pythonu, ako si myslíte, virtuálne prostredie bolo vytvorené bez pipu alebo sa poškodilo, alebo váš distribútor Linuxu spravuje pip oddelene od základnej inštalácie Pythonu.

Najbezpečnejšou opravou je pracovať od interpreta smerom von. Najprv identifikujte presný spustiteľný súbor Pythonu, potom vyskúšajte vstavaný ensurepipmodul Pythonu a na správcu balíkov operačného systému prejdite iba get-pip.pyvtedy, keď vstavaná metóda nie je k dispozícii. Oficiálna dokumentácia k pip odporúča volať pip ako modul – python -m pipna systémoch podobných Unixu alebo py -m pipvo Windowse – pretože to viaže pip na konkrétny interpret.

Stručný prehľad: vyberte si správnu opravu

Čo vidíšNajlepšia prvá akciaPrečo
python -m piphovorí, že neexistuje modul s názvom pipBehpython -m ensurepip --upgradeCPython dokáže bootstrapovať svoj pribalený pip bez jeho sťahovania
pipfunguje, ale python -m pipzlyhávaKontrolné sys.executablea spustiteľné cestyPravdepodobne miešaš inštalácie Pythonu
No module named ensurepipPoužite správcu balíkov od vášho distribútora alebo opravte inštaláciu Pythonuensurepipje voliteľné a distribútori ho môžu vynechať
Virtuálnemu prostrediu chýba pipBootstrap pip vo vnútri alebo znovu vytvorte prostredievenvnormálne nainštaluje pip, pokiaľ --without-pipnebol použitý
externally-managed-environmentzobrazuje sa v LinuxeVytvorte virtuálne prostredieSystém Python je zámerne spravovaný správcom balíkov operačného systému.

Krok 1: Potvrďte, ktorému interpretovi Pythonu chýba pip

Nezačínajte preinštalovaním náhodných balíkov. Najprv sa opýtajte toho istého interpreta, či existuje pip.

Okná

py --version
py -m pip --version
py -c "import sys; print(sys.executable)"
where python
where pip

macOS a Linux

python3 --version
python3 -m pip --version
python3 -c 'import sys; print(sys.executable)'
command -v python3
command -v pip3

Ak samostatný príkaz pipalebo pip3odkazuje na jednu inštaláciu, zatiaľ čo príkaz pythonalebo python3odkazuje na inú, problémom je nesúlad interpretov, nie nevyhnutne chýbajúca inštalácia PIP. Uprednostnite modulový formulár zobrazený v oficiálnej používateľskej príručke PIP .

Príkazový riadok systému Windows zobrazuje Python 3 a ModuleNotFoundError po pokuse o import súboru pip.
Chyba je viazaná na aktuálne spustený interpreter Pythonu; pred zmenou inštalácie identifikujte tento interpreter.

V systéme macOS sa rovnaký príznak môže objaviť v Termináli pri python3prechode na inštaláciu Pythonu, ktorá neobsahuje pip.

Terminál macOS zobrazujúci Python 3 a chybu ModuleNotFoundError pre pip.
V systémoch macOS a Linux použite príkaz python3 -m pip, aby bol príkaz pip viazaný na interpret Pythonu 3, ktorý chcete použiť.

Krok 2: Obnovte PIP pomocou ensurepip

Pre normálnu inštaláciu CPythonu ensurepipje prvá metóda opravy, ktorú treba vyskúšať. Dokumentácia Pythonu uvádza, že modul bootuje pip z komponentov dodávaných s interpretom a pre tento krok bootovania nepotrebuje prístup na internet. Modul bol pridaný v Pythone 3.4.

Okná

py -m ensurepip --upgrade
py -m pip --version
py -m pip install --upgrade pip

macOS a Linux

python3 -m ensurepip --upgrade
python3 -m pip --version
python3 -m pip install --upgrade pip

Prvý príkaz nainštaluje alebo obnoví verziu pip, ktorá je súčasťou danej verzie Pythonu. Posledný príkaz potom môže aktualizovať pip z jeho nakonfigurovaného indexu balíkov. Pozrite si dokumentáciu k Pythonuensurepip a oficiálneho sprievodcu inštaláciou pip .

Linuxový terminál zobrazujúci príkaz python3 ensurepip, po ktorom nasleduje úspešná kontrola verzie python3 -m pip.
Po úspešnom ensurepipspustení by mala nasledovať kontrola verzie pomocou rovnakého interpreta Pythonu.

Krok 3: Ak chýba ensurepip, použite metódu vhodnú pre toho, kto nainštaloval Python

Aktuálna dokumentácia Pythonu výslovne uvádza, že ensurepipje to voliteľné. Ak vaša kópia CPythonu túto funkciu neobsahuje, Python odporúča konzultáciu s distribútorom, ktorý dodal daný interpreter. Toto je obzvlášť dôležité v systéme Linux, kde operačný systém môže zámerne baliť pip samostatne.

Systém v štýle Ubuntu alebo Debianu Python

Pre Ubuntu poskytuje oficiálny archív balíkov python3-pipbalík. Typická inštalácia systémového balíka je:

sudo apt update
sudo apt install python3-pip python3-venv

Potom overte pomocou:

python3 -m pip --version

Namiesto kopírovania príkazu aptdo distribúcie, ktorá nie je Debianom, použite dokumentáciu k balíkom vašej distribúcie. Stránka balíka Ubuntu pre python3-pip potvrdzuje, že balík je distribuovaný samostatne.

Python nainštalovaný z python.org

Ak je oficiálna inštalácia python.org poškodená a ensurepipneočakávane nie je dostupná, oprava alebo preinštalovanie tejto inštalácie Pythonu je často čistejšie ako manuálne opravovanie súborov. Sťahujte iba z oficiálnej stránky na stiahnutie Pythonu .

Obrazovka inštalátora Pythonu pre Windows zobrazujúca štandardnú možnosť inštalácie a zaškrtávacie políčko PATH.
Klasické zobrazenie inštalačného programu Python pre Windows znázorňuje cestu k oprave alebo preinštalovaniu; dostupné verzie a ovládacie prvky inštalačného programu sa môžu líšiť v závislosti od vydania Pythonu.

A čo get-pip.py?

Správcovia PIP ho uvádzajú get-pip.pyako podporovaný inštalačný mechanizmus, keď PIP chýba. Používateľská príručka pre balíky Python odporúča ensurepipnajskôr vyskúšať a upozorňuje, že to get-pip.pynie je kompatibilné so správcami balíkov operačného systému. Toto upozornenie je dôležité pre inštalácie Pythonu spravované distribúciami.

Ak zámerne používate bootstrap skript, získajte ho iba z miesta, na ktoré odkazuje oficiálna dokumentácia k inštalácii PIP . Nepoužívajte náhodnú kópiu z fóra, GIST alebo stránky na stiahnutie tretej strany.

Krok 4: Oprava virtuálneho prostredia namiesto úpravy systémového Pythonu

Modul Pythonu venvštandardne nainštaluje pip, pokiaľ prostredie nebolo vytvorené pomocou --without-pip. Ak je existujúce prostredie jednorazové, jeho opätovné vytvorenie je často rýchlejšie a reprodukovateľnejšie ako pokus o opravu čiastočne poškodeného adresára balíkov.

Okná

py -m venv .venv
.venv\Scriptsctivate
python -m pip --version

macOS a Linux

python3 -m venv .venv
source .venv/bin/activate
python -m pip --version

Ak prostredie už existuje a potrebujete ho zachovať, aktivujte ho a skúste:

python -m ensurepip --upgrade
python -m pip install --upgrade pip

Oficiálna dokumentácia uvádza, že savenvensurepip štandardne používa na zavedenie PIP do nových prostredí.

Terminál zobrazujúci vytvorenie a aktiváciu prostredia dot-venv, po ktorej nasleduje kontrola verzie pip a inštalácia balíka.
Nové virtuálne prostredie izoluje balíky projektov od systémového interpreta a zvyčajne obsahuje vlastný pip.

Prečo je to dôležité na moderných distribúciách Linuxu

PEP 668 definuje EXTERNALLY-MANAGEDznačku, ktorú používajú distribútori na informovanie inštalátorov balíkov Pythonu, aby štandardne nemenili globálny kontext balíka systémového interpreta. Ak pip hlási externe spravované prostredie, ide o iný problém ako „pip chýba“. Odporúčaným postupom je zvyčajne vytvorenie virtuálneho prostredia, a nie vynútenie globálnej inštalácie. Pozri PEP 668 .

Krok 5: Overte opravu pomocou rovnakého interpreta, ktorý budete skutočne používať

Po akejkoľvek oprave overte pip aj cieľový balík z toho istého spustiteľného súboru Python.

Okná

py -m pip --version
py -m pip install requests
py -c "import requests; print(requests.__version__)"

macOS a Linux

python3 -m pip --version
python3 -m pip install requests
python3 -c 'import requests; print(requests.__version__)'

Ak pracujete v IDE alebo notebooku, skontrolujte aj interpreta vybraný týmto nástrojom. Bežným problémom je inštalácia balíkov s jedným terminálovým Pythonom, zatiaľ čo editor spúšťa iný Python alebo iné virtuálne prostredie.

Editor kódu zobrazujúci kód Pythonu, ktorý vypíše verziu PIP a spustiteľný súbor Pythonu s úspešným výsledkom v termináli.
Keď IDE stále hlási chýbajúce balíky, porovnajte jeho spustiteľný súbor Pythonu s interpretom použitým pre úspešné vykonanie príkazu pip.

Naozaj potrebujete importovať pip do svojho kódu v Pythone?

Zvyčajne nie. V dokumentácii k pipu sa uvádza, že pip je program príkazového riadku a že jeho interné API nie sú podporované ako verejné Python API. Aj keď import pippo inštalácii môže fungovať, kód aplikácie by nemal závisieť od interných prvkov pipu.

Ak skript skutočne potrebuje volať pip, dokumentácia k pipu odporúča jeho spustenie ako podproces s aktuálnym interpretom:

import subprocess
import sys

subprocess.check_call([
    sys.executable,
    "-m",
    "pip",
    "install",
    "SomePackage",
])

Pozrite si časť Používanie pipu z vášho programu v oficiálnej používateľskej príručke pipu .

Časté chyby, ktoré udržiavajú chybu pri živote

  • Spustenie, pip install pipkeď už chýba pip: najprv použite ensurepip, správcu balíkov OS alebo oficiálnu metódu bootstrap.
  • Používanie sudo pipna distribuovane spravovanom Pythone: môže to byť v konflikte s vlastníctvom balíka operačného systému. Uprednostnite virtuálne prostredie.
  • Oprava PATH, keď samotný modul chýba: PATH riadi, či shell nájde spustiteľný súbor; neinštaluje pipmodul do interpreta Pythonu.
  • Inštalácia do nesprávnej verzie Pythonu: použite python -m pip, python3 -m pipalebo , py -m pipnamiesto predpokladu, že holý pippríkaz cieli na správny interpreter.
  • Opätovné použitie presunutého virtuálneho prostredia: Dokumentácia venv v Pythone popisuje prostredia ako jednorazové a vo všeobecnosti nie prenosné. Namiesto pokusu o opravu pevne zakódovaných ciest vytvorte presunuté prostredie znova.

Záverečný kontrolný zoznam

  • Potvrďte presný spustiteľný súbor Pythonu pomocou sys.executable.
  • Spustite pip cez tento interpret s -m pip.
  • Skúste to ensurepip --upgradepred stiahnutím iného bootstrap nástroja.
  • Ak ensurepipnie je k dispozícii, postupujte podľa pokynov distribútora na správu balíkov.
  • Pre závislosti projektu používajte virtuálne prostredie, najmä na externe spravovaných inštaláciách Linuxu.
  • Výsledok overte z toho istého terminálu, IDE, notebooku alebo runtime služby, v ktorom je spustený váš projekt.

python -m ensurepip --upgradePri väčšine štandardných inštalácií Pythonu 3 nasleduje za najkratšou spoľahlivou opravou reťazec python -m pip --version, ktorý sa python3v systémoch podobných Unixu alebo pyWindowsu podľa potreby nahrádza reťazcom . Ak to zlyhá, pretože ensurepipchýba reťazec , zastavte inštaláciu a pred výberom ďalšej metódy opravy zistite, kto dodal vašu inštaláciu Pythonu.

Zanechať komentár

Ako opraviť chybu „CSS štýly Tailwind sa neaktualizujú“ v aplikácii Vite React

Ako opraviť chybu „CSS štýly Tailwind sa neaktualizujú“ v aplikácii Vite React

Opravte neaktualizované štýly CSS v Tailwind vo Vite React kontrolou nastavenia Tailwind v4, importu CSS, detekcie zdrojov, dynamických tried, HMR a zastaraných vyrovnávacích pamätí.

Ako opraviť ModuleNotFoundError: V Pythone 3 neexistuje modul s názvom „pip“

Ako opraviť ModuleNotFoundError: V Pythone 3 neexistuje modul s názvom „pip“

Oprava chyby ModuleNotFoundError v jazyku Python 3 pre príkaz pip v systémoch Windows, macOS a Linux pomocou nástroja ensurepip, balíkov operačného systému, virtuálnych prostredí a kontrol interpretov.

Ako opraviť chybu „Oprávnenie zamietnuté (verejný kľúč)“ v GitHub SSH

Ako opraviť chybu „Oprávnenie zamietnuté (verejný kľúč)“ v GitHub SSH

Opravte chybu „Oprávnenie GitHub SSH zamietnuté (verejný kľúč)“ kontrolou hostiteľa, aktívneho kľúča SSH, účtu GitHub, autorizácie SSO, vzdialenej adresy URL a prístupu na port 22.

Ako opraviť chybu „Git Push Rejected: Non-FastForward“ bez straty zmien

Ako opraviť chybu „Git Push Rejected: Non-FastForward“ bez straty zmien

Bezpečne opravte nerýchle pretáčanie zmien v Gite. Chráňte lokálnu prácu, načítajte vzdialené commity, vyberte zlúčenie alebo rebase, vyriešte konflikty a odošlite zmeny bez straty.

Ako opraviť chybu „Nginx 502 Bad Gateway“ pri proxyovaní do Node.js

Ako opraviť chybu „Nginx 502 Bad Gateway“ pri proxyovaní do Node.js

Opravte chyby Nginx 502 Bad Gateway s Node.js upstream kontrolou portu aplikácie, protokolov NGINX, adresy proxy_pass, siete kontajnerov, časových limitov a opätovného načítania.

Ako opraviť chybu „Typ 'null' nie je priraditeľný k typu“ v TypeScripte

Ako opraviť chybu „Typ 'null' nie je priraditeľný k typu“ v TypeScripte

Oprava chyby „Typ 'null' nie je možné priradiť k typu“ v jazyku TypeScript pomocou typov zjednotenia, zúženia, predvolených hodnôt a bezpečných tvrdení v rámci strictNullChecks.

Ako opraviť chybu „Prisma Client has not been generated yet“

Ako opraviť chybu „Prisma Client has not been generated yet“

Opravte chybu nevygenerovaného Prisma Client kontrolou generátora, schémy, výstupnej cesty, importov, verzií, nastavenia monorepa a krokov zostavenia pri nasadení.

Ako opraviť chybu „ERR_MODULE_NOT_FOUND“ v importoch Node.js ESM

Ako opraviť chybu „ERR_MODULE_NOT_FOUND“ v importoch Node.js ESM

Opravte chybu Node.js ERR_MODULE_NOT_FOUND v ESM kontrolou ciest importu, prípon súborov, inštalácie balíkov, exportov, režimu ESM a čistých inštalácií.

Ako vyriešiť problém so SSL certifikátom: Unable to get local issuer certificate v Git

Ako vyriešiť problém so SSL certifikátom: Unable to get local issuer certificate v Git

Vyriešte chybu Git 'unable to get local issuer certificate' identifikáciou dôveryhodného backendu, inštaláciou správneho reťazca CA a ponechaním zapnutej SSL verifikácie.

Ako opraviť chybu časového limitu siete MongoDB v pripojení Mongoose

Ako opraviť chybu časového limitu siete MongoDB v pripojení Mongoose

Opravte chyby časového limitu siete MongoDB v Mongoose identifikáciou typu časového limitu, testovaním dosiahnuteľnosti Atlasu alebo TCP, opravou URI a ladením časových limitov len v odôvodnených prípadoch.