Januar 12, 2026

Virtual Environments

VENV

In Python gibt es mehrere Möglichkeiten ein virtuelles Environment zu erstellen. Eine davon ist das Modul „venv“:

python -m venv myenv

Um das Environment zu aktivieren benötigt man diesen Befehl:

# unter Windows
myenv\Scripts\activate

# unter macOS und Linux:
source myenv/bin/activate

Danach kann man seine Pakete installieren mit:

pip install paketname

Um das Environment zu deaktivieren verwendet man

deactivate

Um das Environment zu löschen:

rm -r myenv

Conda

Verwendet man Conda, dann geht das so:

conda create --name myenv python=3.10

Um das Environment zu aktivieren:

conda activate myenv

Pakete kann man dann mit conda oder mit pip installieren:

conda install paketname
pip install paketname

Deaktivieren geht mit

conda deactivate

Liste aller Environments:

conda env list

Environment löschen:

conda remove --name myenv --all

Requirements

Um die Abhängigkeiten eines virtuellen Environments zu dokumentieren verwendet man standardmäßig die Datei „requirements.txt“.

Mit pip wird diese folgendermaßen erzeugt:

pip freeze > requirements.txt

Anschließend kann man die Abhängigkeiten in neuen Umgebungen folgendermaßen installieren:

pip install -r requirements.txt

In Conda verwendet man stattdessen eine environment.yml Datei:

conda env export --name myenv > environment.yml

Diese kann man dann so verwenden:

conda env create -f environment.yml

Für pip-basierte Pakete kann man aber auch in conda mit pip und requirements.txt arbeiten. Allerdings erzeugt pip freeze in Verbindung mit Anaconda eine requirements.txt die lokale Pfade enthält. Für eine „saubere“ requirements.txt mit conda und pip verwendet man die Option format=freeze:

pip list --format=freeze > requirements.txt

UV

UV ist eine weitere Alternative zu pip oder conda. Es ist ein modernes und extrem schnelles Tool für Python Package Management. Es kann direkt mit pip installiert werden:

pip install uv

Ein virtuelles Environment in UV erstellt man so:

uv venv .venv  # Erstellt eine virtuelle Umgebung (wie virtualenv)
source .venv/bin/activate  # (Windows: .venv\Scripts\activate)

Pakete installieren kann man ähnlich wie mit pip, funktioniert aber deutlich schneller:

uv pip install numpy pandas matplotlib

Statt einer requirements.txt nutzt uv standardmäßig pyproject.toml um installierte Pakete als Konfigurationsdatei zu speichern:

uv pip freeze > pyproject.toml

Anschließend kann man die Requirements in einer anderen Umgebung installieren:

uv pip install