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

330 Dokumentationen verfügbar

Wissensdatenbank

Python Virtual Environment Venv

Zuletzt aktualisiert: 14.07.2026 um 12:29 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

Texterstellung mit KI-Unterstützung

Enjix Beta

Enjyn AI Agent

Hallo 👋 Ich bin Enjix — wie kann ich dir helfen?
LLMs können Fehler machen. Ihre Nachrichten werden an Google Gemini weitergeleitet.
120