Python 3 finns ofta redan på Ubuntu, men när ett projekt behöver externa bibliotek kan det snabbt bli oklart vad som ska installeras och var. Vanligen räcker Ubuntus paket för att komma igång, men för projektets paket behöver du hålla miljön separat från systemets Python.

Håll Ubuntus Python och projektets paket åtskilda
- Kontrollera först: kör
python3 --version; Python 3 kan redan finnas installerat. - Installera verktygen: använd
sudo apt install python3-fullom du behöver en komplett utvecklingsmiljö. - För projekt: skapa en virtuell miljö med
python3 -m venv .venv. - För fristående appar: välj
pipxi stället för att installera dem globalt med pip. - Skydda systemet: byt inte ut Ubuntus system-Python och använd inte
--break-system-packagessom genväg.
Kontrollera först om Python redan finns
Du öppnar terminalen för att börja med ett skript, men behöver du verkligen installera själva språket? Skriv python3 --version; får du ett versionsnummer är tolken redan tillgänglig, även om stöd för virtuella miljöer eller paket saknas.
På Ubuntu är python3 distributionspaketet som följer Ubuntus standardversion av Python 3. Enligt Ubuntus guide för Python-utvecklingsmiljöer är systemets Python också beroende av andra Ubuntu-verktyg. Avinstallera eller ersätt därför inte systemets Python för att få en annan version till ett projekt.
Installera tolken och utvecklingsverktygen med apt
Om kontrollen visar att Python saknas, eller om du behöver fler utvecklingskomponenter, uppdaterar du först paketlistan och installerar Ubuntus kompletta Python-paket:
sudo apt update
sudo apt install python3-fullpython3-full samlar tolken med bland annat stöd för virtuella miljöer och IDLE. Jag tycker att det är ett tydligt val för en nybörjare som vill komma igång med projekt utan att själv pussla ihop flera paket.
Kontrollera installationen med python3 --version. Om du specifikt behöver paket för utveckling mot C-bibliotek eller vill installera pip separat, välj relevanta Ubuntu-paket via apt i stället för att försöka ändra systemets Python med pip.
En virtuell miljö hindrar projekt från att krocka
Ett projekt kan behöva en viss version av ett bibliotek medan ett annat behöver en annan. Skapa en egen miljö i projektmappen så håller du de beroendena borta från Ubuntus systempaket:
mkdir mitt-projekt
cd mitt-projekt
python3 -m venv .venv
source .venv/bin/activate
python -m pip install requestsNär miljön är aktiv pekar python och pip mot projektets egen installation. En snabb kontroll är which python; sökvägen ska sluta med mitt-projekt/.venv/bin/python. Installera projektets bibliotek med python -m pip, så använder pip samma tolk som kör koden.
Stöter du på externally-managed-environment beror det oftast på att pip försöker installera paket i Ubuntus systemmiljö. PEP 668 beskriver skyddet som hindrar den typen av ändringar; lösningen för projektbibliotek är att skapa eller aktivera en virtuell miljö, inte att kringgå spärren.
Välj apt, venv eller pipx efter vad du installerar
Det är lätt att blanda ihop bibliotek till egen kod med färdiga program som råkar vara skrivna i Python. Välj verktyg efter användningen, så slipper du installera något i fel miljö.
| Behov | Välj | Exempel |
|---|---|---|
| Python eller ett systembibliotek | apt | sudo apt install python3-full |
| Bibliotek till ett kodprojekt | venv och pip | python -m pip install requests i projektmiljön |
| Fristående Python-program | pipx | Installera verktyget i en egen isolerad miljö |
| Flera särskilda Python-versioner | pyenv | Välj en version för ett visst projekt |
För ett fristående kommandoradsverktyg installerar du pipx med sudo apt install pipx och kör sedan pipx ensurepath. Pipx passar däremot inte som ersättning för projektets virtuella miljö: det hanterar appar separat, medan venv samlar bibliotek som din egen kod behöver.
Om projektet kräver en Python-version som Ubuntu inte erbjuder i sina paket kan pyenv hantera flera tolkversioner. Jag skulle hålla mig till Ubuntus standardversion om projektet inte kräver något annat; färre parallella versioner innebär färre möjligheter att råka köra koden med fel tolk.
Felsök genom att kontrollera vilken Python som körs
När ett paket verkar saknas trots att pip säger att installationen lyckades pekar kommandona ofta på olika miljöer. Tabellen hjälper dig att hitta nästa steg utan att ändra systeminstallationen på måfå.
| Situation | Trolig orsak | Gör så här |
|---|---|---|
python3 --version fungerar inte | Python 3 saknas eller kan inte hittas i sökvägen | Kör sudo apt update och installera python3-full. |
python3 -m venv .venv misslyckas | Stöd för virtuella miljöer saknas | Installera python3-full från Ubuntus paketkällor och försök igen. |
pip visar externally-managed-environment | Kommandot försöker ändra systemets Python | Skapa en virtuell miljö för projektet eller använd apt för ett Ubuntu-paket. |
| Koden hittar inte ett installerat bibliotek | pip och programmet använder olika Python-miljöer | Aktivera projektets .venv och kör python -m pip. |
För felsökning inne i miljön räcker det ofta att köra which python och python -m pip --version. Om sökvägen inte innehåller projektets .venv har miljön inte aktiverats, eller så körs ett annat terminalfönster än det där du aktiverade den.
Låt Ubuntu sköta sin egen Python
Den säkraste uppdelningen är enkel: apt sköter Ubuntus paket, venv sköter projektets bibliotek och pipx sköter fristående Python-appar. Då kan du bygga och testa en webbplats eller ett skript utan att projektets beroenden kliver in i systemets verktyg.
Om du bara vill provköra ett första skript behöver du inte jaga en separat Python-version. Kontrollera tolken, skapa en projektmiljö när du ska installera bibliotek och låt Ubuntus standardinstallation vara ifred.