PIP , der Python-Paketmanager, wird verwendet, um in der Programmiersprache Python geschriebene Pakete zu installieren, zu aktualisieren und zu entfernen. In diesem Handbuch werden wir besprechen, wie Sie Pip installieren und Python-Pakete verwalten, z. B. das Installieren, Aktualisieren und Entfernen von Paketen mit Pip. Außerdem werden wir sehen, was eine virtuelle Umgebung ist, wie man sie erstellt und wie man Pakete in der virtuellen Umgebung mit venv- und/oder virtualenv-Tools isoliert.
Pip mit Paketmanagern installieren
Auf Arch Linux und seine Varianten wie Antergos , Manjaro-Linux , können Sie Pip mit folgendem Befehl installieren:
Python 2:
$ sudo pacman -S python2-pip python2-wheel python2-setuptools
Python 3:
$ sudo pacman -S python-pip python-wheel python-setuptools
Auf Fedora 21:
Python 2:
$ sudo yum upgrade python-setuptools
$ sudo yum install python-pip python-wheel
Python 3:
$ sudo yum install python3 python3-wheel
Fedora 22:
Python 2:
$ sudo dnf upgrade python-setuptools
$ sudo dnf install python-pip python-wheel
Python 3:
$ sudo dnf install python3 python3-wheel
Um neuere Versionen von pip, setuptools und wheel für Python 2 zu erhalten, aktivieren Sie das PyPA Copr Repo mit dem folgenden Befehl:
$ dnf copr enable pypa/pypa
und dann ausführen:
$ sudo dnf upgrade python-setuptools
$ sudo dnf install python-pip python-wheel
Unter CentOS/RHEL:
Pip und Wheel sind in den Standard-Repositories von CentOS und RHEL nicht verfügbar. Um pip auf CentOS, RHEL, Scientific Linux und anderen RPM-basierten Systemen zu installieren, aktivieren Sie das EPEL-Repository mit Befehl:
$ sudo yum install epel-release
Führen Sie dann den folgenden Befehl aus, um Pip zu installieren:
$ sudo yum install python-pip
$ sudo yum install python-wheel
Da das Setup-Tools-Paket in den Standard-Repositories verfügbar ist, können Sie es mit folgendem Befehl installieren:
$ sudo yum upgrade python-setuptools
Python 3:
$ sudo yum install python3-pip
openSUSE:
Python 2:
$ sudo zypper install python-pip python-setuptools python-wheel
Python 3:
$ sudo zypper install python3-pip python3-setuptools python3-wheel
Debian/Ubuntu:
Für Python 2.x :
$ sudo apt-get install python-pip
Für Python 3.x:
Ersetzen Sie „python“ durch „python3“, um die Version Python 3.x zu installieren.
$ sudo apt-get install python3-pip
In der Version Ubuntu 12.04 war pip3 nicht im Paket enthalten. Wenn Sie Ubuntu 12.04 verwenden, können Sie pip3 mit den folgenden Befehlen installieren:
$ sudo apt-get install python3-setuptools
$ sudo easy_install3 pip
Installation von Pip aus Binärdateien
Wenn Sie Pip aus Binärdateien installieren möchten, führen Sie einfach Folgendes aus:
$ wget https://bootstrap.pypa.io/get-pip.py
$ sudo python get-pip.py
Bitte beachten Sie, dass get-pip.py auch Setuptools und Wheel installiert. Wie ich bereits erwähnt habe, haben einige Linux-Distributionen kein Rad in den Kernrepositorys. In solchen Fällen müssen Sie möglicherweise einige Repositories von Drittanbietern hinzufügen, z. B. EPEL.
pip ist bereits installiert, wenn Sie Python 2>=2.7.9 verwenden oder Python 3>=3.4 Von python.org heruntergeladene Binärdateien. Sie müssen Pip jedoch mit dem Befehl aktualisieren:
$ sudo pip install -U pip
Oder,
$ sudo pip install --upgrade pip
Führen Sie Folgendes aus, um alle zu aktualisieren (pip, setuptools, whell):
$ sudo pip install --upgrade pip setuptools wheel
Um die installierte Version von pip/pip3 herauszufinden, führen Sie Folgendes aus:
$ pip --version
Oder,
$ pip -V
Beispielausgabe wäre:
pip 9.0.1 from /usr/lib/python3.6/site-packages (python 3.6)
Virtuelle Umgebungen erstellen
Vor der Installation von Python-Paketen wird empfohlen, eine virtuelle Umgebung zu erstellen. Warum müssen wir eine virtuelle Umgebung erstellen? Sie könnten fragen. Denn die „virtuellen Umgebungen“ von Python ermöglichen es uns, ein Python-Paket an einem isolierten Ort zu installieren, anstatt es global zu installieren.
Angenommen, Sie möchten ein Python-Paket installieren, zum Beispiel youtube-dl, das Version 1 von LibFoo benötigt, aber eine andere Anwendung erfordert Version 2. Wie können Sie diese beiden Anwendungen verwenden? Wenn Sie alles in /usr/lib/python2.7/site-packages installieren oder /usr/lib/python3.6/site-packages (oder was auch immer der Standardspeicherort Ihrer Plattform ist), kann es leicht passieren, dass Sie unbeabsichtigt eine Anwendung aktualisieren, die nicht aktualisiert werden sollte . Um dies zu vermeiden, isolieren wir die Pakete in der virtuellen Umgebung. Alle virtuellen Umgebungen haben ihre eigenen Installationsverzeichnisse und interagieren oder kollidieren nicht miteinander.
Wir können isolierte Python-Umgebungen mit zwei Modulen erstellen, nämlich:
- venv,
- virtuell
Für Python 2.x müssen Sie virtualenv installieren. Führen Sie dazu Folgendes aus:
$ sudo pip install virtualenv
Lassen Sie uns jetzt eine virtuelle Umgebung erstellen.
Verwenden von virtualenv:
$ virtualenv <DIR_NAME>
$ source <DIR_NAME>/bin/activate
Für Python 3.x müssen Sie venv installieren. Auf Ubuntu-basierten Systemen können Sie es mit folgendem Befehl installieren:
$ sudo apt-get install python3-venv
Erstellen Sie nun eine virtuelle Umgebung mit venv:
$ python3 -m venv <DIR_NAME>
$ source <DIR_NAME>/bin/activate
Sobald Sie den obigen Befehl ausführen, werden Sie sofort in Ihre virtuelle Umgebung versetzt.
Um die virtuelle Umgebung zu deaktivieren und zu Ihrer normalen Shell zurückzukehren, führen Sie Folgendes aus:
$ deactivate
Python-Pakete mit Pip verwalten
Jetzt sehen wir uns die häufigste grundlegende Pip-Nutzung mit Beispielen an.
Um die Liste aller Pip-Befehle und allgemeinen Optionen anzuzeigen, führen Sie Folgendes aus:
$ pip
Sie sollten eine Ausgabe wie unten sehen.
Um zu erfahren, was der Installationsbefehl tut, führen Sie Folgendes aus:
$ pip install --help
Die häufigste Verwendung von pip ist die Installation von PyPi (Python Package Index) . PyPi ist ein Repository, das alle Pakete enthält, die von der Community der Entwickler in Python erstellt wurden.
Pakete installieren
Erstellen Sie zuerst eine virtuelle Umgebung wie unten gezeigt:
Verwenden von virtualenv:
$ virtualenv MYENV
Ersetzen Sie MYENV durch Ihren eigenen Namen.
Verwendung von venv:
$ python3 -m venv MYENV
Aktivieren Sie es schließlich mit dem Befehl:
$ source MYENV/bin/activate
Sobald Sie den obigen Befehl ausführen, werden Sie in Ihre virtuelle Umgebung platziert:
Jetzt ist es an der Zeit, einige Pakete zu installieren. Um ein Paket zu installieren, zum Beispiel youtube-dl, führen Sie Folgendes aus:
$ pip install youtube-dl
Dieser Befehl installiert youtube-dl mit all seinen Abhängigkeiten.
Um eine bestimmte Version zu installieren, führen Sie Folgendes aus:
$ pip install youtube_dl=2017.12.14
Um eine andere als die angegebene Version zu installieren, führen Sie Folgendes aus:
$ pip install youtube_dl!=2017.12.14
Beachten Sie das '!" vor dem Gleichheitszeichen.
Führen Sie Folgendes aus, um eine Version gleich oder höher als die angegebene Version zu installieren:
$ pip install youtube_dl>=2017.12.14
Um eine Version in einem bestimmten Bereich zu installieren, beispielsweise größer oder gleich einer Version und kleiner als eine andere, führen Sie Folgendes aus:
$ pip install youtube_dl>=2017.12.14, <2017.12.20
So installieren Sie eine Version, die mit einer bestimmten Version „kompatibel“ ist:
$ pip install youtube_dl~=2017.12.14
Pakete herunterladen
Um ein Paket mit allen Abhängigkeiten herunterzuladen (ohne es zu installieren), führen Sie Folgendes aus:
$ pip download youtube-dl
Alle installierten Pakete auflisten
Um herauszufinden, welche Pakete von pip installiert wurden, führen Sie Folgendes aus:
$ pip freeze
Oder,
$ pip list
Diese Befehle zeigen alle installierten Pakete mit pip in Ihrem System an.
Pakete suchen
Führen Sie Folgendes aus, um nach einem bestimmten Paket zu suchen, z. B. youtube-dl:
$ pip search youtube-dl
Dieser Befehl sucht und zeigt das Ergebnis an, das mit der Zeichenfolge "youtube-dl" übereinstimmt.
Pakete aktualisieren
Führen Sie Folgendes aus, um alle veralteten Pakete in einem einfachen tabellarischen Spaltenformat aufzulisten:
$ pip list --outdated --format=columns
Um ein veraltetes Paket zu aktualisieren, führen Sie Folgendes aus:
$ pip install --upgrade youtube-dl
Wir können auch alle Pakete in einer Datei ablegen und sie alle auf einmal aktualisieren. Exportieren Sie zunächst alle Dateien in eine Datei:
$ pip freeze > mypackages.txt
Aktualisieren Sie jetzt alle Pakete auf einmal mit dem Befehl:
$ pip install -r mypackages.txt --upgrade
Oder,
$ pip install -r mypackages.txt -U
Wenn der obige Befehl aus irgendeinem Grund nicht funktioniert hat, verwenden Sie den folgenden Befehl, um alle Pakete auf einmal zu aktualisieren:
$ pip freeze --local | grep -v '^\e' | cut -d = -f 1 | xargs -n1 pip install -U
Alle installierten Pakete in eine Datei exportieren
Manchmal möchten Sie vielleicht alle installierten Pakete in eine Datei exportieren, um sie in einer anderen Umgebung zu testen. Führen Sie dazu Folgendes aus:
$ pip freeze > MYENV_packages.txt
Deaktivieren Sie nun die aktuelle virtuelle Umgebung:
$ deactivate
und erstellen Sie eine neue mit den Befehlen:
$ virtualenv MYENV1
Ersetzen Sie MYENV1 durch Ihren eigenen Namen.
Verwendung von venv:
$ python3 -m venv MYENV1
Aktivieren Sie die neu erstellte Umgebung:
$ source MYENV1/bin/activate
Installieren Sie nun alle zuvor exportierten Pakete.
$ pip install -r MYENV_packages.txt
Um alles auf einmal ohne Benutzerinteraktion zu installieren, führen Sie Folgendes aus:
$ pip install -r MYENV_packages.txt -y
Ebenso können Sie mit dem Befehl:
alle Pakete aus der Liste entfernen$ pip uninstall -r MYENV_packages.txt -y
Paketinformationen anzeigen
Um die Details eines Pakets anzuzeigen, führen Sie Folgendes aus:
$ pip show youtube-dl Name: youtube-dl Version: 2017.12.14 Summary: YouTube video downloader Home-page: https://github.com/rg3/youtube-dl Author: Sergey M. Author-email: [email protected] License: UNKNOWN Location: /home/sk/MYENV/lib/python3.6/site-packages Requires:
Paketabhängigkeiten anzeigen
Wir können die Abhängigkeiten aller installierten Pakete mit dem Tool "pipdeptree" visualisieren.
Installieren Sie es mit dem Befehl:
$ pip install pipdeptree
Nach der Installation können Sie den Abhängigkeitsbaum mit dem folgenden Befehl anzeigen:
$ pipdeptree
Pakete deinstallieren
Führen Sie zum Deinstallieren/Entfernen eines installierten Pakets Folgendes aus:
$ pip uninstall youtube-dl
Um mehrere Pakete zu deinstallieren, geben Sie sie wie folgt durch Kommas getrennt an:
$ pip uninstall package1, package2
Um alle mit pip installierten Python-Pakete zu entfernen, führen Sie Folgendes aus:
$ pip freeze | xargs pip uninstall -y
Manchmal erlaubt pip Ihnen nicht, Pakete zu deinstallieren, die dem Betriebssystem gehören. In solchen Fällen können Sie alle Pakete, die nicht dem Betriebssystem gehören, mit dem Befehl deinstallieren:
$ pip uninstall -y $(pip freeze | sed 's;==.*;;g' | tr '\n' ' ')
Wie ich im vorherigen Abschnitt erwähnt habe, können wir alle installierten Pakete in einer Datei ablegen und sie mit dem Befehl:
aus der Liste deinstallieren$ pip uninstall -r MYENV_packages.txt -y
In diesem Stadium erhalten Sie möglicherweise eine Vorstellung von Pip und seiner Verwendung. Weitere Einzelheiten finden Sie in der offiziellen Dokumentation und den Pip-Hilfeabschnitt, indem Sie den folgenden Befehl ausführen:
$ pip --help
Oder einfach,
$ pip
Empfohlene Lektüre:
- Pipenv - Das offiziell empfohlene Python-Paketierungstool
- Pipx – Python-Anwendungen in isolierten Umgebungen installieren und ausführen
Und das ist alles für jetzt. Ich hoffe, das war hilfreich.