Heim > Artikel > Backend-Entwicklung > Python eingefrorene und virtuelle Umgebung
Python Freeze
Python-Anwendungen verwenden während der Entwicklung eine Vielzahl von Paketen. Normalerweise verwenden wir venv, um die Python-Interpreterversion und ihre Pakete zu isolieren, von denen jedes Anwendungsprojekt abhängt.
Wie kann man die verschiedenen importierten Pakete in der Anwendung „reparieren“? pip stellt die Methode freeze bereit, die den Namen und die Version des abhängigen Pakets in eine TXT-Datei exportiert. Wenn andere das Projekt in Zukunft vorstellen, können sie es direkt über die von pip bereitgestellte Methode importieren:
pip freeze > requirements.txt pip install -r requirements.txt
und Java Der Maven Warehouse-Import ist ähnlich, leichter und umweltfreundlicher.
virtuelle Umgebung
Bei Verwendung von Java-Anwendungen geben wir den JDK-Pfad des Projekts an. In den meisten Fällen befinden sich möglicherweise 1–3 Versionen von JDK auf jedem Entwicklungscomputer, z. B. jdk6, jdk7, jdk8. Dies reicht normalerweise aus. Dann wird der JAVA_HOME-Pfad in der Systemvariablen PATH angegeben.
Die Abhängigkeiten externer Drittanbieterpakete von Java-Anwendungen werden von Maven festgelegt und während des Builds als Abhängigkeiten in das Anwendungsverzeichnis gebracht.
Pythons Steuerungsmethode ist etwas anders, da Python selbst mit dem Pip-Paketverwaltungstool ausgestattet ist. Und da Python eine dynamische Skriptsprache ist, können mehrere Gruppen unterschiedlicher Skripte in verschiedenen Verzeichnissen verteilt sein. Aufgrund des Entwicklungszyklus können die Python-Interpreter und -Pakete, von denen die Skripte in jedem Verzeichnis abhängen, unterschiedlich sein Skripte, die den Python3-Interpreter verwenden, verursachen im Allgemeinen Fehler.
Wir brauchen eine Möglichkeit, die laufende Umgebung jeder Gruppe von Skripten zu isolieren, nämlich die virtuelle Umgebung zu verwenden, um das Problem zu lösen.
Die spezifische Methode besteht darin, im Stammverzeichnis des Python-Projekts auszuführen:
|—myPythonProject |———codePackage
Ausführen:
virtualenv -p python3 env-p stellt das Erstellen einer virtuellen Python3 dar Umgebung
env Das Verzeichnis, das die virtuelle Umgebung darstellt, heißt env
Die Verzeichnisstruktur nach dem Ausführen lautet:
|—myPythonProject |———codePackage |———env |——bin |——lib |——include
Dann müssen wir diese virtuelle Umgebung aktivieren:
source env/bin/activate
Nach der Aktivierung ändert sich die Umgebungsaufforderung zu:
(env) ➜ Knife Git:(Master) ✗
bedeutet das Die Umgebung ist bereits dies. Die für das Projekt erforderliche virtuelle Python3-Umgebung. Zu diesem Zeitpunkt werden alle Pakete von pip install im Verzeichnis env/lib/python3.5/site-packages installiert und sind nicht von Paketen betroffen, die von anderen installiert wurden Python-Projekte.
Wenn Sie eine IDE wie pyCharm verwenden, müssen Sie beim Erstellen des Projekts den dem Projekt entsprechenden Projektinterpreter angeben, wie unten gezeigt: