ubuntuusers.de

🛈 Aktuell gibt es im Wiki ca. 380 Artikel, die nur für Xenial getestet sind. Dies entspricht ca. 4,8 % aller Wikiartikel. Damit diese im Frühjahr nicht alle archiviert werden müssen, ist eure Mithilfe gefragt!

virtualenv

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:


Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Wiki/Icons/python.png virtualenv 🇬🇧 ist die Kurzform für „Virtual Environment“ und dient zum Einrichten von ein oder mehreren unabhängigen Python-Umgebungen.

Normalerweise werden alle Python-Module in die allgemeine Systemumgebung installiert. Dies gilt sowohl für Installation über die Paketverwaltung als auch über den Python Package Index 🇬🇧. Aus Kompatibilitätsgründen oder zu Testzwecken möchte man aber eventuell ältere oder neuere Module installieren, ohne die „Standardinstallation“ zu gefährden. Hier kommt virtualenv ins Spiel. Virtualenv erzeugt voneinander isolierte Python-Umgebungen, in welchen dann beliebige Python-Module installiert werden können, ohne das Hauptsystem oder andere Umgebungen zu "stören".

Installation

Paketverwaltung

Man installiert das Paket[1]

  • virtualenv (universe)

Paketliste zum Kopieren:

sudo apt-get install virtualenv 

Oder mit apturl installieren, Link: apt://virtualenv

Manuelle Installation

Die neueste Version lässt sich über den Python Package Index mittels pip installieren. Das Python-Modul für virtualenv heißt ebenfalls einfach nur virtualenv.

Alternative venv

Seit Python 3.4 ist als Alternative zu virtualenv auch ein Modul zum Erzeugen einer virtuellen Pythonumgebung direkt in Python enthalten. Das Modul heißt venv.

Dafür muss zusätzlich das Paket

  • python3-venv (universe)

Paketliste zum Kopieren:

sudo apt-get install python3-venv 

Oder mit apturl installieren, Link: apt://python3-venv

installiert werden.

Benutzung

Je nach dem, ob man virtualenv oder das in Python 3 enthaltene Module venv nutzt, ist die Bedienung leicht unterschiedlich.

virtualenv

Die Benutzung von virtualenv läuft über die beiden Kommandozeilen-Befehle virtualenv und source, wie im folgenden Beispiel gezeigt wird. Mit dem Aufruf

virtualenv /home/BENUTZER/virtualenv-test 

wird im Homeverzeichnis von BENUTZER eine neue virtuelle Python-Umgebung namens virtualenv-test angelegt. Der Name der Testumgebung und auch der Pfad sind wählbar. Während der Installation wird automatisch der Standard-Python-Interpreter des Systems verwendet.

Wenn andere Python-Interpreter verfügbar sind, dann können diese mit dem Parameter -p ausgewählt werden. Wenn man zum Beispiel unter Groovy neben der Python Version 3.8 auch 2.7 installiert hat, kann man mit dem folgenden Befehl eine virtuelle Umgebung für 2.7 erzeugen:

virtualenv -p 2.7 /home/BENUTZER/virtualenv-test-2.7 

Hat man eine virtuelle Umgebung angelegt, muss man diese noch aktivieren. Passend zum obigen Beispiel lautet der Befehl:

source /home/BENUTZER/virtualenv-test/bin/activate 

Darauf hin ändert sich das Shell-Prompt, es ist ein (virtualenv-test) vorangestellt. In einer virtuellen Umgebung wird automatisch pip mit installiert. Python-Module, die systemweit installiert sind, werden nicht automatisch mit in die virtuelle Umgebung kopiert. In der virtuellen Umgebung sind somit "nur" die Module aus der Standardinstallation von Python sowie pip installiert.

Durch das Ausführen von pip list innerhalb und ausserhalb der virtuellen Umgebung kann man vergleichen welche Module jeweils installiert sind. Ebenso kann man mit python --version die aktive Version des Python-Interpreters innerhalb und ausserhalb der virtuellen Umgebung abfragen.

Um die virtuelle Umgebung zu verlassen, beendet man diese durch die Eingabe von deactivate am Shell-Prompt. Alternativ kann man das Terminal auch mit exit beenden.

Alternative venv

In Python 3 (ab Python 3.4) ist das Modul venv enthalten. Mit dem Aufruf

python3 -m venv /home/BENUTZER/venv-test 

wird im Homeverzeichnis von BENUTZER eine virtuelle Umgebung namens venv-test anlegen. Die Aktivierung der virtuellen Umgebung erfolgt genau so wie bei virtualenv, über den Befehl source ~/venv-test/bin/activate.

Deinstallation von virtuellen Umgebungen

Eine Deinstallation im eigentlichen Sinne ist nicht notwendig. Es reicht, das für die virtuelle Umgebung angelegte Verzeichnis inklusive Unterverzeichnissen zu löschen.

Diese Revision wurde am 6. Februar 2021 23:15 von chris34 erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Programmierung, Python