GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Pipenv – Das offiziell empfohlene Python-Paketierungstool

Neulich haben wir einen Anfängerleitfaden zum Verwalten von Python-Paketen mit PIP veröffentlicht . In diesem Handbuch haben wir besprochen, wie pip installiert wird und wie Python-Pakete mit pip installiert, aktualisiert und deinstalliert werden. Wir haben auch die Bedeutung virtueller Umgebungen besprochen und wie man eine virtuelle Umgebung mit den Tools venv und virtualvnv erstellt. Heute lernen wir einen weiteren Python-Paketmanager namens pipenv kennen . Es ist das neue empfohlene Python-Packaging-Tool von Python.org. Es kann verwendet werden, um Python-Abhängigkeiten einfach zu installieren und zu verwalten, ohne virtuelle Umgebungen erstellen zu müssen. Pipenv erstellt und verwaltet automatisch eine virtuelle Umgebung für Ihre Projekte. Es fügt auch Pakete aus Ihrem Pipfile hinzu/entfernt sie, wenn Sie Pakete installieren/deinstallieren.

Warum Pipenv?

Pipenv behebt die folgenden Echtzeitprobleme:

  • Sie müssen keine virtuelle Umgebung mehr erstellen. Pipenv erstellt automatisch virtualenv für Ihre Projekte. Um es einfach auszudrücken:pip und virtualenv arbeiten zusammen.
  • Verwalten einer requirements.txt Datei kann problematisch sein, daher verwendet Pipenv stattdessen das kommende Pipfile und Pipfile.lock, was für grundlegende Anwendungsfälle überlegen ist.
  • Es ist sicher. Hashes werden immer und überall verwendet. Sicherheitslücken automatisch aufdecken.
  • Sehen Sie sich jederzeit das Abhängigkeitsdiagramm an.
  • Optimieren Sie den Entwicklungsworkflow, indem Sie .env-Dateien laden.

Nun, fangen wir an.

Installieren Sie Pipenv, das offiziell empfohlene Python-Packaging-Tool

Es gibt viele Möglichkeiten, Pipenv zu installieren. Wir werden zwei offiziell empfohlene Methoden sehen.

1. Installation von pipenv mit pip

Der offiziell empfohlene Weg ist die Verwendung von pip . Stellen Sie sicher, dass Sie Python und Pip installiert haben. Wenn nicht, lesen Sie unseren vorherigen Leitfaden, der im ersten Absatz dieses Artikels verlinkt ist.

Führen Sie nach der Installation von pip den folgenden Befehl aus, um pipenv zu installieren.

$ pip install --user pipenv

Dieser Befehl installiert pipenv auf Benutzerebene (d. h. nicht systemweit). Wenn pipenv nach der Installation nicht in Ihrer Shell verfügbar ist, müssen Sie möglicherweise das binäre Verzeichnis Ihrer Benutzerbasis hinzufügen zu deinem WEG. Wenn Sie Ihre Benutzerbasis nicht kennen, führen Sie den folgenden Befehl aus, um sie herauszufinden:

$ python -m site --user-base

Sie werden eine Ausgabe wie unten sehen.

/home/sk/.local

Wie Sie in der obigen Ausgabe sehen können, ist mein Benutzerbasisverzeichnis /home/sk/.local , und das Binärverzeichnis meiner Basis ist /home/sk/.local/bin . Klar? Gut. Fügen Sie dies nun Ihrem PATH hinzu. Bearbeiten Sie dazu Ihr ~/.profile Datei:

$ vi ~/.profile

Fügen Sie diese Zeile am Ende hinzu:

export PATH="$HOME/.local/bin:$PATH"

Drücken Sie ESC drücken und :wq eingeben um die Datei zu speichern und zu beenden. Führen Sie dann den folgenden Befehl aus, um die Änderungen zu übernehmen.

$ source ~/.profile

Führen Sie abschließend den folgenden Befehl aus:

$ pipenv --update

Um pipenv jederzeit zu aktualisieren, führen Sie den folgenden Befehl aus:

$ pip install --user --upgrade pipenv

2. Installation von pipenv mit pipsi

Pipsi ist ein leistungsstarkes Tool, mit dem Sie Python-Skripte in isolierten virtuellen Umgebungen installieren können.

Um pipsi zu installieren, führen Sie Folgendes aus:

$ curl https://raw.githubusercontent.com/mitsuhiko/pipsi/master/get-pipsi.py | python

Folgen Sie den Anweisungen auf dem Bildschirm, Sie müssen Ihren PATH aktualisieren.

Führen Sie nach der Installation von pipsi die folgenden Befehle aus, um pipenv zu installieren:

$ pipsi install pew
$ pipsi install pipenv

Führen Sie abschließend den folgenden Befehl aus:

$ pipenv --update

Um pipenv jederzeit zu aktualisieren, führen Sie einfach Folgendes aus:

$ pipsi upgrade pipenv

Python-Pakete mit Pipenv verwalten

Führen Sie 'pipenv' in Ihrer Shell aus, um die Liste der verfügbaren Befehle und allgemeinen Optionen anzuzeigen.

$ pipenv

Beispielausgabe wäre:

Pakete installieren

Erstellen Sie ein neues Projekt oder wechseln Sie in das Verzeichnis des vorhandenen Projekts.

$ mkdir myproject
$ cd myproject

Installieren Sie die Pakete für Ihr Projekt:

$ pipenv install requests

Wenn Sie ls in das Verzeichnis Ihres Projekts (d. h. myproject in diesem Fall) werden Sie zwei Dateien sehen, nämlich Pipfile und Pipfile.lock . Das Pipfile enthält Informationen des neu installierten Pakets wie Name, Version usw. Sie können dieses Pipfile verwenden, um zu verfolgen, welche Abhängigkeiten Ihr Projekt benötigt, wenn Sie das Projekt neu installieren oder mit anderen teilen möchten.

$ cat Pipfile

Und die Pipfile.lock enthält Ihre Systeminformationen, alle Abhängigkeiten des installierten Pakets einschließlich ihrer Version und alle Hashes für alle installierten Pakete und ihre Abhängigkeiten.

$ cat Pipfile.lock

Installieren Sie nun ein weiteres Paket und überprüfen Sie den Inhalt der beiden Dateien erneut. Sie werden feststellen, dass das Pidfile jetzt zwei Pakete enthält. Und Pidfile.lock enthält alle Abhängigkeiten der installierten Pakete, einschließlich ihrer Version, und alle Hashes für alle installierten Pakete und ihre Abhängigkeiten. Um es einfach auszudrücken, diese beiden Dateien werden jedes Mal automatisch aktualisiert, wenn Sie ein neues Paket installieren.

Hast du bemerkt? Ich habe keine virtuellen Umgebungen erstellt. Pipenv hat automatisch eine virtuelle Umgebung für mein Projekt erstellt. Sie fragen sich, wo Ihre Projekte gespeichert sind? Führen Sie einfach diesen Befehl aus, um den Standort Ihrer virtuellen Umgebung zu erfahren.

$ pipenv --venv
/home/sk/.local/share/virtualenvs/myproject-x7-2XYPN

Führen Sie Folgendes aus, um die Home-Details Ihres Projekts anzuzeigen:

$ pipenv --where
/home/sk/myproject

Wie Sie in den beiden Ausgaben sehen können, "/home/sk/myproject" ist das Home-Verzeichnis meines Projekts und "/home/sk/.local/share/virtualenvs/myproject-x7-2XYPN" ist meine virtuelle Umgebung.

Sie können in Ihre virtuelle Umgebung "ls" eingeben, um zu überprüfen, was sich dort befindet.

$ ls /home/sk/.local/share/virtualenvs/myproject-x7-2XYPN

Pakete aktualisieren

Um alle Pakete zu aktualisieren, führen Sie Folgendes aus:

$ pipenv update

Dieser Befehl deinstalliert alle Pakete und installiert Paket(e) auf die neuesten kompatiblen Versionen.

Integrität eines Pakets prüfen

Machen Sie sich Sorgen, ob es Sicherheitslücken in den installierten Paketen gibt? Kein Problem! Pipenv steht hinter Ihnen. Um die Integrität von Paketen zu prüfen, führen Sie einfach den folgenden Befehl aus:

$ pipenv check
Checking PEP 508 requirements…
Passed!
Checking installed package safety…
All good!

Der obige Befehl prüft auf Sicherheitslücken und auf PEP 508-Markierungen, die in der Pipfile bereitgestellt werden.

Abhängigkeitsdiagramm anzeigen

Lassen Sie uns 'pipenv graph' ausführen und sehen, was passiert.

$ pipenv graph

Wie Sie sehen können, zeigt dieser Befehl das Abhängigkeitsdiagramm an.

Paket deinstallieren

Um ein Paket zu entfernen, führen Sie Folgendes aus:

$ pipenv uninstall requests
Un-installing speedtest-cli…
Uninstalling speedtest-cli-1.0.7:
 Successfully uninstalled speedtest-cli-1.0.7

Removing speedtest-cli from Pipfile…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
Updated Pipfile.lock (c23e27)!

Führen Sie Folgendes aus, um alles zu deinstallieren:

$ pipenv uninstall --all
Un-installing all packages from virtualenv…
Found 1 installed package(s), purging…

Environment now purged and fresh!

Führen Sie für weitere Details Folgendes aus:

$ pipenv -h

Oder,

$ pipenv --man

Soweit ich getestet habe, ist Pipenv viel einfacher zu verwenden als Pip. Da es offiziell von Python.org empfohlen wird, können Sie venv und virtualenv jetzt vollständig loswerden, wenn Sie Python-Pakete installieren.

Empfohlene Lektüre:

  • Pipx – Python-Anwendungen in isolierten Umgebungen installieren und ausführen

Linux
  1. So installieren Sie Python unter Linux

  2. So installieren Sie Python unter Linux Mint 20

  3. Der Zweck des Befehls „install“?

  4. So installieren Sie die Anaconda-Python-Distribution unter Ubuntu 16.04

  5. Installieren Sie tkinter für Python

So installieren Sie Python 3 unter Windows 10

Installieren Sie Python 3 auf Redhat 8

So installieren Sie Scrapy, ein Web-Crawling-Tool in Ubuntu

So installieren Sie das neue Kali Linux-Snapshot-Tool Unkaputtbar

So installieren Sie die Anaconda-Python-Distribution unter Ubuntu 18.04

Postbote auf Linux-System:Das beste API-Tool für Softwareentwickler