Leser wie Sie helfen, MUO zu unterstützen. Wenn Sie über Links auf unserer Website einen Kauf tätigen, erhalten wir möglicherweise eine Affiliate-Provision.
Abhängigkeitsfehler können der schlimmste Albtraum eines Entwicklers sein. Sie können viel Zeit damit verbringen, Abhängigkeiten zu aktualisieren und herunterzustufen, um vergeblich zu versuchen, Probleme zu lösen.
Pipenv ist ein effektiver Abhängigkeitsmanager für Python-Projekte. Es richtet Abhängigkeiten von virtuellen Umgebungen sowohl in der Entwicklung als auch in der Produktion ein und verwaltet sie.
Pipenv verarbeitet das Hinzufügen und Entfernen von Abhängigkeitspaketen, um Konflikte zu reduzieren. Es verbessert auch Pip mit erhöhten Sicherheitsmaßnahmen, Versionierungsoptionen und Paketaktualisierungen.
Warum Pipenv über Virtualenv verwenden?
Virtualenv ist am gebräuchlichsten Python-Tool für virtuelle Umgebungen, und es gibt noch andere Alternativen. Zu den Vorteilen der Verwendung von Pipenv anstelle dieser Tools gehören die folgenden:
- Sie können Pakete ohne Versionen installieren. Nicht-Versionierung reduziert Konflikte beim Arbeiten mit verschiedenen Versionen von Abhängigkeiten.
- Pipenv kombiniert Pip und Virtualvenv; Sie verwenden sie nicht mehr separat.
- Pipenv eliminiert die requirements.txt-Datei. Pipenv erstellt Pipfile, um Abhängigkeiten zu verfolgen, und Pipfile.lock, um die Anwendung zu erstellen.
- Es unterstützt die schnelle und einfache Einrichtung virtueller Umgebungen.
Pipenv fügt Pip mehr als nur zusätzliche Dateien hinzu. Im nächsten Abschnitt erfahren Sie mehr über einige zusätzliche Funktionen, die PIpenv zu einem umfassenden Paket machen.
Installierte Pakete aktualisieren
Möglicherweise möchten Sie installierte Pakete aktualisieren, wenn es neue Versionen gibt. Aktualisierte Versionen verfügen wahrscheinlich über neue Funktionen zur Optimierung Ihrer Anwendung.
Führen Sie den folgenden Befehl aus, um neue Updates für Abhängigkeiten zu ermitteln:
pipenv aktualisieren--veraltet
Wenn neue Updates verfügbar sind, müssen Sie möglicherweise die Pakete aktualisieren. Es gibt zwei Möglichkeiten, Pakete zu aktualisieren. Sie können alles aktualisieren oder nur bestimmte Pakete aktualisieren.
Um alles zu aktualisieren, führen Sie den folgenden Update-Befehl aus:
pipenv aktualisieren
Um nur bestimmte Pakete zu aktualisieren, führen Sie den Code wie unten dargestellt aus:
pipenv aktualisieren# aktualisiert ein angegebenes Paket
Importieren von Paketen aus der requirements.txt
Pipenv importiert den Inhalt einer requirements.txt-Datei, wenn sie im selben Projekt installiert ist. Wenn du rennst pipenv installieren, es importiert und erstellt eine Pipfile.
Mit Pipenv können Sie auch eine requirements.txt-Datei importieren. Sie müssen bei der Installation den Speicherort der Datei requirements.txt angeben, wie gezeigt:
pipenv Installieren -R Weg/Zu/requirements.txt # importiert eine Anforderungsdatei.
Die Datei requirements.txt wird wahrscheinlich mit Paketen mit Versionsnummern geliefert. Sie können neue Pakete entfernen und installieren. Wenn Sie beabsichtigen, die versionierten Pakete beizubehalten, führen Sie den folgenden Befehl aus:
pipenv sperren--keep-outdated
Pipenv Verbesserte Sicherheitsfunktionen
Das Pipfile.lock in Pipenv optimiert die neuen Sicherheitsverbesserungen in Pip. Die Pipfile.lock generiert die sha256-Hashes jedes heruntergeladenen Pakets.
Pipenv stellt sicher, dass Sie keine schädlichen Dateien herunterladen, wenn Sie sich in einem kompromittierten Netzwerk befinden.
Python-Versionen angeben
Mit Pipenv können Sie eine bevorzugte Version von Python für Ihr Projekt auswählen. Möglicherweise möchten Sie angeben, ob Sie mehrere Versionen von Python installiert haben.
Um Python3 zu verwenden
pipenv --python 3# Pipenv verwendet jede installierte Version 3
pipenv --python 3.8# Pipenv wird Version 3.8 verwenden
Wenn Sie eine Python-Version angeben, durchsucht Pipenv das System nach dieser Python-Version. Wenn Sie nichts angeben, wählt Pipenv die neueste Version von Python aus, die auf Ihrem Computer installiert ist. Erfahren Sie mehr von der Offizielle Pipenv-Dokumentation.
Installation und Verwendung von Pipenv in einem praktischen Beispiel
Fahren Sie als Nächstes mit der Installation fort und erfahren Sie, wie Sie Pipenv praktisch verwenden.
1. Pipenv installieren
Vor der Installation von Pipenv müssen Sie zunächst alle installierten Abhängigkeiten aktualisieren. Führen Sie Updates mit dem folgenden Befehl aus:
sudo apt-erhalten aktualisieren
Als nächstes installieren Sie Pipenv mit dem folgenden Befehl:
Pip3 Installieren pipenv
Wenn es keine Fehler gibt, bedeutet dies, dass die Installation erfolgreich war. Um die Installation zu bestätigen, überprüfen Sie die Pipenv-Version mit dem folgenden Befehl:
pipenv--Ausführung#Ausgangpipenv,Ausführung 2022.8.30
Wenn Sie zuvor Pip verwendet haben, ist Pipenv mit der Pip-Syntax kompatibel. Wenn Sie beispielsweise ein Paket installieren möchten, können Sie verwenden pipenv installieren anstatt Pip installieren.
2. Erstellen Sie eine virtuelle Umgebung
Sie müssen die virtuelle Umgebung Ihres Projekts im Projektordner aktivieren. Pipenv verwaltet Abhängigkeiten pro Projekt.
An die Befehlszeile, navigieren Sie mit dem folgenden Befehl durch Ihren Projektordner.
CD Mein Projekt
Öffnen Sie als Nächstes den Ordner in einem Code-Editor. Installieren Sie dann Pipenv-Abhängigkeiten mit dem folgenden Befehl:
pipenv Installieren Anfragen
Eine erfolgreiche Installation sieht wie folgt aus:
Pipenv-Abhängigkeiten erstellen eine virtuelle Umgebung für das Projekt. Im Projektordner werden Sie feststellen, dass Pipenv die Pipfiles erstellt hat. Als nächstes aktivieren Sie die virtuelle Umgebung.
3. Virtuelle Umgebung aktivieren
Sie müssen die virtuelle Umgebung aktivieren, in der die Anwendung ausgeführt wird. Führen Sie die aus pipenv-Shell Befehl, um die virtuelle Umgebung von Pipenv zu betreten.
pipenv-Shell
Beachten Sie die Änderungen in der Befehlszeile nach dem Ausführen von pipenv-Shell. Links in Klammern erscheint eine nach dem Ordner benannte virtuelle Umgebung.
(installpipenv) sandra@sandra-Lenovo:~/MUOfiles/installpipenv$
Ihre Pipenv-Umgebung ist jetzt aktiv!
Sie können jetzt mit der Installation Ihrer bevorzugten Pakete und Abhängigkeiten beginnen. Lassen Sie uns die Django-Bibliothek installieren. Führen Sie den folgenden Befehl auf dem Terminal aus, um Django zu installieren.
pipenv Installieren Django
Eine erfolgreiche Installation sieht wie im Bild unten dargestellt aus.
Wenn Sie auf das Pipfile klicken, sehen Sie die installierte Django-Bibliothek ohne die Versionsnummer.
[[Quelle]]
url = "https://pypi.org/simple"
verify_ssl = WAHR
Name = "pypi"[Pakete]
Anfragen = "*"
Django = "*"[dev-Pakete]
[erfordert]
python_version = "3.10"
Auf diese Weise verwaltet Pipenv alle Ihre Abhängigkeiten.
Paketversionen angeben
Obwohl Pipenv Pakete ohne Versionen installiert, können Sie eine bevorzugte Version installieren. Wenn Sie beispielsweise Django 4.1.1 installieren möchten, können Sie dies folgendermaßen tun:
pipenv Installieren django==4.1.1# installiert Django 4.1.1
Dadurch wird jedoch die Version gesperrt; Verwenden Sie für einen flexibleren Ansatz die ~= Operator:
pipenv Installieren django~=4.1.1# installiert Django 4.1.1, 4.1.2 falls verfügbar, aber nicht 4.2.0
Sie können jede Version, die gleich oder größer als eine bestimmte Version ist, mit anfordern >=:
pipenv Installieren django>=3.1.1 # installiert Django 3.1.1 und höher
Pipenv eignet sich am besten für die Paketverwaltung
Pipenv ist ein innovatives Tool zum Installieren und Verwalten von Projektabhängigkeiten. Seine Fähigkeit, versionslose Abhängigkeiten zu handhaben, verhindert Konflikte zwischen verschiedenen Versionen.
Pipenv kombiniert die Leistungsfähigkeit von Pip und Venv in einem einzigen Befehl. Pipfiles ersetzen die Datei requirements.txt, die Abhängigkeiten in älteren Python-Versionen handhabt. Seine Sicherheitsmaßnahmen schützen Ihre App vor schädlichen Downloads.
Sie können jetzt Pipenv verwenden, um Ihre Entwicklungserfahrung zu optimieren und zu verbessern. Mit neuen Updates ist Pipenv weiterhin ein fantastisches Tool zum Verwalten von Python-Projekten.