Python pakethantering med PIP

By . Latest revision .

Python har många inbyggda moduler men det finns många fler externa moduler som kan användas. PIP är ett verktyg för att installera sådana externa moduler. Det är en pakethanterare för Pythons externa moduler.

Denna artikel beskriver kortfattat hur du jobbar med PIP och hur du installerar pip3 för Python 3.

#Om PIP

PIP är en pakethanterare för python moduler. Du kan läsa om PIP på deras webbplats.

Som ett exempel på hur det kan se ut när en referens görs till att du “kan installera modulen med pip” så kikar vi på installationsbeskrivningen för Python-modulen requests.

Så här står det där.

pip install <paket>

Nåväl, först behöver vi installera PIP.

#Använda PIP

Från och med Python 3.4 så ska pip följa med python installationen. Försök kolla vilken version av pip som är installerat. Om kommandot inte finns hoppa ner till Installera PIP för Python 3 för att installera det.

När ni använder pip kommandot kommer troligen flera av er få en warning om att det finns en nya version tillgänglig. Ni kan ignorera felet eller köra kommandot för att uppdater pip, vilket som funkar.

#Vilken version har jag?

Nu kan du köra kommandot pip3. Skriv pip3 --version för att se vilken version du har och för att dubbelkolla att pip är kopplad mot Python 3.

pip3 --version

Vi kör python 3 och därför använder vi pip3 som kommando.

#Installera moduler

När du har installerat PIP kan du installera moduler. I exemplet installeras Python-modulen request.

pip3 install requests

Pip försöker installera paket på fler olika sätt. Ett av dem kallas wheel, om ni får i utskriften typ 2-3 rader med röd text och det står något med wheel, men installationen fortsätter ändå. Då kan ni ignorera felet, det betyder bara att wheel inte funkade och sen använde pip ett annat verktyg för att installera.

#Cygwin problem

Det finns ett känt fel som vissa med cygwin får när de försöker installera ett paket.

gcc error i cygwin.

gcc error i cygwin.

Lösningen är inte alltid självklar men vi har en lösning som oftast funkar. Ladda ner installations filen för Cygwin, och starta den. När du kommer till steget där du kan installera paket, i dropdown för View välj full. Sök sen på gcc och kolla att följande paket är installerade gcc-core, gcc-g++, libgcc1. Om de inte är installerade, installera dem annars klicka så de ominstalleras. Sök sen på python3-devel, installera eller ominstallera. Det sista paketet är python3X-devel, där X är din python version. Om du har python3.7 ska X vara 7 osv. När du har klickat i installera eller ominstallera alla paket kör klart installationen. Nu ska förhoppnings vis pip install fungera. Om det inte hjälpte, kontakta kursansvarig.

#Hantera installerade moduler

Du kan kolla upp vilken version du har av en viss modul.

pip3 show requests

#Installera PIP för Python 3

På webbplatsen finns det instruktioner hur man installerar PIP generellt sätt.

Jag vill dock använda PIP tillsammans med Python 3 så det blir lite annorlunda.

#Installera i Windows och Cygwin

I Cygwin installerar pip3 jag enligt beskrivningen på PIPs webbplats. Bortsett från att jag använder pyton3 istället för python.

# Ladda ned installationsfilen
wget https://bootstrap.pypa.io/get-pip.py

# Använd python3 för att installera pip
python3 get-pip.py

#Installera i MacOS

Jag installerade python3 med pakethanteraren Brew. Då fick jag också med pakethanteraren pip3.

#Installera i Linux

För att installera pip3 i Debian Linux gör jag så här.

apt-get install python3-pip

#Avslutningsvis

Kika på hemsidan för PIP för att lära dig fler kommandon om själva pakethanteraren.

Har du frågor kring PIP så finns det en särskild forumtråd kopplad till denna artikeln.

#Revision history

  • 2021-01-16: (D, aar) La till stycke om gcc problem i cygwin.
  • 2021-01-07: (C, aar) Flyttade runt stycken då pip kommer för installerat i nyare versioner av python.
  • 2016-03-07: (B, mos) Ändrade paketnamn på Debian till python3-pip.
  • 2014-09-17: (A, mos) Första utgåvan för python kursen.

Document source.

Category: labbmiljo.