Python Virtual Environments: venv richtig nutzen | Enjyn Gruppe
Hallo Welt
Hallo Welt
Original Lingva Deutsch
Übersetzung wird vorbereitet...
Dieser Vorgang kann bis zu 60 Sekunden dauern.
Diese Seite wird erstmalig übersetzt und dann für alle Besucher gespeichert.
0%
DE Zurück zu Deutsch
Übersetzung durch Lingva Translate

235 Dokumentationen verfügbar

Wissensdatenbank

Python Virtual Environment Venv

Zuletzt aktualisiert: 20.01.2026 um 10:05 Uhr

Python Virtual Environments: venv richtig nutzen

Virtuelle Umgebungen sind essentiell für Python-Entwicklung. Sie isolieren Projektabhängigkeiten und verhindern Konflikte zwischen verschiedenen Python-Projekten.

Warum Virtual Environments?

  • Isolation: Jedes Projekt hat eigene Pakete
  • Versionskonflikte vermeiden: Projekt A braucht Django 3, Projekt B Django 4
  • Sauberes System: Globale Python-Installation bleibt unverändert
  • Reproduzierbarkeit: Exakte Versionen für Deployment

venv erstellen und aktivieren

Virtuelle Umgebung erstellen

# In Projektverzeichnis wechseln
cd mein-projekt

# venv erstellen
python3 -m venv venv

# Alternative Namen
python3 -m venv .venv
python3 -m venv env

Aktivieren

# Linux/macOS
source venv/bin/activate

# Windows (PowerShell)
.\venv\Scripts\Activate.ps1

# Windows (CMD)
venv\Scripts\activate.bat

Nach Aktivierung zeigt der Prompt (venv) an:

(venv) user@host:~/projekt$

Deaktivieren

deactivate

Pakete verwalten

Pakete installieren

# Einzelnes Paket
pip install requests

# Bestimmte Version
pip install django==4.2

# Mehrere Pakete
pip install flask sqlalchemy pytest

requirements.txt erstellen

# Alle installierten Pakete exportieren
pip freeze > requirements.txt

# Inhalt anzeigen
cat requirements.txt

Beispiel requirements.txt:

Django==4.2.7
requests==2.31.0
python-dotenv==1.0.0
Pillow==10.1.0

Aus requirements.txt installieren

pip install -r requirements.txt

Projektstruktur

mein-projekt/
├── venv/               # Virtuelle Umgebung (nicht committen!)
├── src/
│   └── app.py
├── tests/
├── requirements.txt    # Abhängigkeiten
├── requirements-dev.txt # Entwicklungs-Abhängigkeiten
├── .gitignore
└── README.md

.gitignore für Python

# Virtual Environment
venv/
.venv/
env/

# Python
__pycache__/
*.py[cod]
*.egg-info/
dist/
build/

# IDE
.idea/
.vscode/
*.swp

# Environment
.env

Entwicklungs- vs. Produktions-Abhängigkeiten

requirements-dev.txt

-r requirements.txt    # Basis-Abhängigkeiten inkludieren
pytest==7.4.3
black==23.11.0
flake8==6.1.0
mypy==1.7.0
# Für Entwicklung
pip install -r requirements-dev.txt

# Für Produktion
pip install -r requirements.txt

Alternative: pip-tools

Für bessere Abhängigkeitsverwaltung:

pip install pip-tools

# requirements.in (nur direkte Abhängigkeiten)
echo "django" > requirements.in
echo "requests" >> requirements.in

# requirements.txt generieren (mit allen Unterabhängigkeiten)
pip-compile requirements.in

# Installieren und synchronisieren
pip-sync requirements.txt

pyenv für Python-Versionen

Verschiedene Python-Versionen parallel nutzen:

# pyenv installieren (Linux/macOS)
curl https://pyenv.run | bash

# Python-Version installieren
pyenv install 3.12.0
pyenv install 3.11.6

# Global setzen
pyenv global 3.12.0

# Pro Projekt setzen
cd mein-projekt
pyenv local 3.11.6

Häufige Probleme

❌ Häufige Fehler:
  • venv-Ordner ins Git committen
  • Pakete global statt im venv installieren
  • venv nicht aktivieren vor pip install
  • Falsche Python-Version im venv

Prüfen ob venv aktiv ist

# Welches Python?
which python
# Sollte zeigen: /pfad/zum/projekt/venv/bin/python

# Welches pip?
which pip
# Sollte zeigen: /pfad/zum/projekt/venv/bin/pip

VS Code Integration

  1. Projekt öffnen
  2. Ctrl+Shift+P → "Python: Select Interpreter"
  3. venv auswählen

VS Code aktiviert das venv automatisch im integrierten Terminal.

💡 Best Practice: Erstellen Sie für jedes Python-Projekt eine eigene virtuelle Umgebung. Das vermeidet Konflikte und macht Projekte reproduzierbar.

Weitere Informationen

Enjix Beta

Enjyn AI Agent

Hallo 👋 Ich bin Enjix — wie kann ich dir helfen?
120