Erstellen und Aktivieren einer virtuellen Python-Umgebung
Python Virtual Environment schafft eine isolierte Python-Arbeitsumgebung, in der Sie Python-Modul-Abhängigkeiten ohne Einfluss auf globale Python-Module installieren können. Es ist besonders wichtig, wenn Ihr Projekt unterschiedliche Anforderungen an die Python-Bibliotheksversionen hat, so dass Sie die spezifische Bibliotheksversion nur in dieser virtuellen Umgebung installieren können.
Sie können die folgenden Schritte durchführen, um die virtuelle Python-Umgebung zu installieren, zu erzeugen, zu aktivieren und auch zu deaktivieren.
-
virtualenv
installierenIn einigen Distributionen ist
virtualenv
bereits installiert. Sie können überprüfen, ob Ihre Distribution es bereits eingebunden hat, indem Sie$ virtual --version
Wenn nicht, installieren Sie
virtualenv
überpip
.$ pip install virtualenv
oder über
apt-get
$ apt-get install python-virtualenv
-
Projekt virtuelle Umgebung erstellen
Verwenden Sie
virtualenv
, um das Projekt Python virtuelle Umgebung zu erstellen$ cd your_project_folder $ virtualenv your_project
-
Projekt virtuelle Umgebung aktivieren
$ source your_project/bin/activate
Es aktiviert die virtuelle Umgebung Ihres Projekts. Sie können es mit einer der beiden folgenden Methoden überprüfen.
Ihre Konsole ändert sich auf etwas wie unten(your_project)user@hostname:~/your_project$
Oder die Umgebungsvariable
PATH
des Systems auflisten$ echo $PATH
Sie sollten den Pfad
your_project
in den gedruckten Informationen sehen. -
Deaktivieren Sie
virtualenv
Wenn Sie in eine andere virtuelle Umgebung wechseln oder einfach die aktuelle virtuelle Umgebung verlassen wollen, können Sie Ihre
virtualenv
deaktivieren, indem Sie(your_project)user@hostname:~/your_project$ deactivate user@hostname:~/your_project$
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook