Heim > System-Tutorial > LINUX > Hauptteil

Tutorial zur Einrichtung einer Python-Umgebung mit Virtualenv

WBOY
Freigeben: 2024-01-03 19:50:01
nach vorne
929 Leute haben es durchsucht

Bei der Entwicklung von Python-Anwendungen ist nur eine Version von Python3 auf dem System installiert: 3.4. Alle Pakete von Drittanbietern werden von pip im Verzeichnis site-packages von Python3 installiert.

Wenn wir mehrere Anwendungen gleichzeitig entwickeln möchten, verwenden diese Anwendungen dasselbe Python, nämlich Python 3, das auf dem System installiert ist. Was passiert, wenn Anwendung A Jinja 2.7 und Anwendung B Jinja 2.6 erfordert?

In diesem Fall muss jede Anwendung möglicherweise über eine eigene „unabhängige“ Python-Laufumgebung verfügen. virtualenv wird verwendet, um eine „isolierte“ Python-Laufumgebung für eine Anwendung zu erstellen.

Zuerst installieren wir Virtualenv mit pip:

$ pip3 install virtualenv
Nach dem Login kopieren

Angenommen, wir möchten ein neues Projekt entwickeln und benötigen eine unabhängige Python-Laufumgebung, können wir Folgendes tun:

Der erste Schritt besteht darin, ein Verzeichnis zu erstellen:

Mac:~ michael$ mkdir myproject
Mac:~ michael$ cd myproject/
Mac:myproject michael$
Nach dem Login kopieren

Der zweite Schritt besteht darin, eine unabhängige Python-Laufumgebung zu erstellen und sie venv:

zu nennen
Mac:myproject michael$ virtualenv --no-site-packages venv
Using base prefix '/usr/local/.../Python.framework/Versions/3.4'
New python executable in venv/bin/python3.4
Also creating executable in venv/bin/python
Installing setuptools, pip, wheel...done.
Nach dem Login kopieren

Der Befehl virtualenv kann eine unabhängige Python-Laufumgebung erstellen. Wir haben außerdem den Parameter --no-site-packages hinzugefügt, sodass alle Pakete von Drittanbietern, die in der System-Python-Umgebung installiert wurden, nicht kopiert werden. Auf diese Weise erhalten wir eine „saubere“ Python-Laufumgebung ohne Pakete von Drittanbietern.

Die neu erstellte Python-Umgebung wird im Verzeichnis venv unter dem aktuellen Verzeichnis abgelegt. Mit der Python-Umgebung venv können Sie source verwenden, um die Umgebung aufzurufen:

Mac:myproject michael$ source venv/bin/activate
(venv)Mac:myproject michael$
Nach dem Login kopieren

Beachten Sie, dass sich die Eingabeaufforderung geändert hat. Es gibt ein Präfix (venv), das darauf hinweist, dass die aktuelle Umgebung eine Python-Umgebung mit dem Namen venv ist.

Installieren Sie verschiedene Pakete von Drittanbietern wie gewohnt und führen Sie den pythonBefehl aus:

(venv)Mac:myproject michael$ pip install jinja2
...
Successfully installed jinja2-2.7.3 markupsafe-0.23
(venv)Mac:myproject michael$ python myapp.py
...
Nach dem Login kopieren

In der venv-Umgebung werden mit pip installierte Pakete in der venv-Umgebung installiert und die System-Python-Umgebung wird in keiner Weise beeinträchtigt. Mit anderen Worten: Die venv-Umgebung wurde speziell für die myproject-Anwendung erstellt.

Um die aktuelle venv-Umgebung zu verlassen, verwenden Sie den Befehl deactivate:

(venv)Mac:myproject michael$ deactivate 
Mac:myproject michael$
Nach dem Login kopieren

An diesem Punkt sind Sie zur normalen Umgebung zurückgekehrt. Jetzt werden Pip oder Python in der System-Python-Umgebung ausgeführt.

Es ist durchaus möglich, für jede Anwendung eine unabhängige Python-Laufumgebung zu erstellen, sodass die Python-Umgebung jeder Anwendung isoliert werden kann.

Wie erstellt virtualenv eine „unabhängige“ Python-Laufumgebung? Das Prinzip ist sehr einfach: Kopieren Sie das System-Python in die Virtualenv-Umgebung und geben Sie mit dem Befehl source venv/bin/activate eine Virtualenv-Umgebung ein. Virtualenv ändert die relevanten Umgebungsvariablen so, dass die Befehle python und pip verwendet werden Zeigen Sie auf die aktuelle Virtualenv-Umgebung.

Zusammenfassung

Virtualenv bietet eine isolierte Python-Laufumgebung für Anwendungen und löst das Problem von Multiversionskonflikten zwischen verschiedenen Anwendungen.

Das obige ist der detaillierte Inhalt vonTutorial zur Einrichtung einer Python-Umgebung mit Virtualenv. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:linuxprobe.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!