Beim Lernen von Python konzentrieren sich viele Anfänger ausschließlich auf die Sprache und ihre Bibliotheken und ignorieren gleichzeitig virtuelle Umgebungen. Infolgedessen kann das Verwalten von Python -Projekten zu einem Chaos werden: Abhängigkeiten, die für verschiedene Projekte installiert sind, können widersprüchliche Versionen aufweisen, was zu Kompatibilitätsproblemen führt.

Selbst als ich Python studierte, betonte niemand die Bedeutung virtueller Umgebungen, die ich jetzt sehr seltsam finde. Sie sind ein äußerst nützliches Instrument, um verschiedene Projekte voneinander zu isolieren.

In diesem Artikel werde ich erklären, wie virtuelle Umgebungen funktionieren, mehrere Beispiele angeben und nützliche Befehle für die Verwaltung teilen.

Downside

Stellen Sie sich vor, Sie haben zwei Python -Projekte auf Ihrem Laptop computer, die jeweils in einem anderen Verzeichnis liegen. Sie erkennen, dass Sie die neueste Model von Library A für das erste Projekt installieren müssen. Später wechseln Sie zum zweiten Projekt und versuchen, Bibliothek B. zu installieren. B.

Hier ist das Downside: Bibliothek B hängt von der Bibliothek A ab, erfordert jedoch eine andere Model als die, die Sie zuvor installiert haben.

Da Sie kein Werkzeug für verwendet haben AbhängigkeitsverwaltungAlle Abhängigkeiten werden weltweit auf Ihrem Laptop installiert. Aufgrund der inkompatiblen Versionen der Bibliothek A begegnen Sie einen Fehler, wenn Sie versuchen, Bibliothek B zu installieren. B.

Lösung

Um solche Probleme zu verhindern, werden virtuelle Umgebungen verwendet. Die Idee ist, für jeden einen separaten Speicherplatz zuzuweisen Python Projekt. Jeder Speicher enthält alle extern heruntergeladenen Abhängigkeiten für ein bestimmtes Projekt auf isolierte Weise.

Insbesondere wird die Bibliothek A zweimal heruntergeladen, wenn wir dieselbe Bibliothek A für zwei Projekte in ihren eigenen virtuellen Umgebungen herunterladen – einmal für jede Umgebung. Darüber hinaus können sich die Versionen der Bibliothek zwischen den Umgebungen unterscheiden, da jede Umgebung vollständig isoliert ist und nicht mit den anderen interagiert.

Nachdem die Motivation hinter der Verwendung virtueller Umgebungen klar ist, lassen Sie uns untersuchen, wie sie in Python erstellen können.

Virtuelle Umgebungen in Python

Es wird empfohlen, eine virtuelle Umgebung im Stammverzeichnis eines Projekts zu erstellen. Eine Umgebung wird mit dem folgenden Befehl im Terminal erstellt:

python -m venv <environment_name>

Nach Übereinkommen, wird normalerweise benannt Venvadditionally wird der Befehl:

python -m venv venv

Infolgedessen erstellt dieser Befehl ein Verzeichnis namens Venvwas die virtuelle Umgebung selbst enthält. Es ist sogar möglich, in dieses Verzeichnis zu gehen, aber in den meisten Fällen ist es nicht sehr nützlich, wie die Venv Das Verzeichnis enthält hauptsächlich Systemskripte, die nicht direkt verwendet werden sollen.

Verwenden Sie den folgenden Befehl, um die virtuelle Umgebung zu aktivieren:

supply venv/bin/activate

Sobald die Umgebung aktiviert ist, können wir Abhängigkeiten für das Projekt installieren. Solange der Venv wird aktiviert, jede installierte Abhängigkeit gehört nur zu dieser Umgebung.

Um die virtuelle Umgebung zu deaktivieren, sort:

deactivate

Sobald die Umgebung deaktiviert ist, kehrt das Terminal in ihren normalen Zustand zurück. Sie können beispielsweise zu einem anderen Projekt wechseln und seine Umgebung dort aktivieren.

Abhängigkeitsverwaltung

Bibliotheken installieren

Vor der Set up von Abhängigkeiten wird empfohlen, eine virtuelle Umgebung zu aktivieren, um sicherzustellen, dass installierte Bibliotheken zu einem einzigen Projekt gehören. Dies hilft, globale Versionskonflikte zu vermeiden.

Der am häufigsten verwendete Befehl für die Abhängigkeitsverwaltung ist PIP. Im Vergleich zu anderen Alternativen, Pip ist intuitiv und einfach zu bedienen.

Zum Installieren einer Bibliothek eingeben:

pip set up <library_name>

In den folgenden Beispielen anstelle des werde ich PANDAS (die am häufigsten verwendete Datenanalyse -Bibliothek) schreiben.

Wenn wir beispielsweise die neueste Model von Pandas herunterladen wollten, hätten wir eingeben sollen:

pip set up pandas

In einigen Szenarien müssen wir möglicherweise eine bestimmte Model einer Bibliothek installieren. Pip Bietet eine einfache Syntax dazu:

pip set up pandas==2.1.4 # set up pandas of model 2.1.4
pip set up pandas>=2.1.4 # set up pandas of model 2.1.4 or larger
pip set up pandas<2.1.4 # set up pandas of model lower than 2.1.4
pip set up pandas>=2.1.2,<2.2.4 # installs the most recent model accessible between 2.1.2 and a pair of.2.4 

Abhängigkeitsdetails anzeigen

Wenn Sie an einer bestimmten Abhängigkeit interessiert sind, die Sie installiert haben pip present Befehl:

pip present pandas

Beispielsweise gibt der Befehl im Beispiel die folgenden Informationen aus:

Beispiel für die Ausgabe der PIP Present Befehl

Abhängigkeit löschen

Verwenden Sie den folgenden Befehl, um eine Abhängigkeit aus einer virtuellen Umgebung zu entfernen:

pip uninstall pandas

Nach Ausführung dieses Befehls werden alle Dateien, die sich auf die angegebene Bibliothek beziehen, gelöscht, wodurch der Speicherplatz freigegeben wird. Wenn Sie jedoch ein Python -Programm ausführen, das diese Bibliothek erneut importiert, werden Sie auf einen Importeur treffen.

Datei mit Anforderungen

Eine gängige Praxis bei der Verwaltung von Abhängigkeiten besteht darin, a zu erstellen Anforderungen.txt Datei, die eine Liste aller heruntergeladenen Abhängigkeiten im Projekt zusammen mit ihren Versionen enthält. Hier ist ein Beispiel dafür, wie es aussehen könnte:

fastapi==0.115.5
pydantic==2.10.1
PyYAML==6.0.2
requests==2.32.3
scikit-learn==1.5.2
scipy==1.14.1
seaborn==0.13.2
streamlit==1.40.2
torch==2.5.1
torchvision==0.20.1
twister==6.4.2
tqdm==4.67.1
urllib3==2.2.3
uvicorn==0.32.1
yolo==0.3.2

Idealerweise jedes Mal, wenn Sie die verwenden pip set up Befehl, Sie sollten der entsprechenden Zeile zum Fügen Sie der hinzu Anforderungen.txt Datei, um alle im Projekt verwendeten Bibliotheken zu verfolgen.

Wenn Sie dies jedoch vergessen, gibt es immer noch eine Various: die pip freeze Der Befehl gibt alle installierten Abhängigkeiten im Projekt aus. Trotzdem, pip freeze Kann ziemlich ausführlich sein, oft auch viele andere Bibliotheksnamen, die Abhängigkeiten der Bibliotheken sind, die Sie im Projekt verwenden.

pip freeze > necessities.txt

In Anbetracht dessen ist es eine gute Angewohnheit, den Anforderungen.TXT -Datei installierte Anforderungen mit ihren Versionen hinzuzufügen.

Immer wenn Sie ein Python -Projekt klonen, wird erwartet, dass eine Datei für Anforderungen.txt bereits im Git -Repository vorhanden ist. Um alle in dieser Datei aufgeführten Abhängigkeiten zu installieren, verwenden Sie die pip set up Befehl zusammen mit der -r -Flag, gefolgt von dem Anforderungen Dateinamen.

pip set up -r necessities.txt

Wenn Sie umgekehrt an einem Python -Projekt arbeiten, sollten Sie eine Anforderungen.txt -Datei erstellen, damit andere Mitarbeiter die erforderlichen Abhängigkeiten problemlos installieren können.

.Gitignore

Bei der Arbeit mit Versionskontrollsystemen sollten virtuelle Umgebungen niemals auf Git gedrängt werden! Stattdessen müssen sie in einer .gitignore -Datei erwähnt werden.

Virtuelle Umgebungen sind in der Regel sehr groß, und wenn vorhandene Anforderungen vorhanden sind.

Abschluss

In diesem Artikel haben wir uns mit dem sehr wichtigen Konzept der virtuellen Umgebung befasst. Durch das Isolieren von heruntergeladenen Abhängigkeiten für verschiedene Projekte ermöglichen sie eine einfachere Verwaltung von mehreren Python -Projekte.

Alle Bilder stammen vom Autor, sofern nicht anders angegeben.

Von admin

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert