Conda-Umgebung erstellen: Vollständige Anleitung mit Beispielen
Updated on
Die Verwaltung von Python-Abhängigkeiten über mehrere Projekte hinweg kann schnell zum Albtraum werden. Verschiedene Projekte erfordern unterschiedliche Paketversionen, und die Installation aller Pakete in einer einzigen Umgebung führt zu Versionskonflikten und fehlerhaftem Code. Conda-Umgebungen lösen dieses Problem, indem sie isolierte Bereiche für die Abhängigkeiten jedes Projekts erstellen.
Diese Anleitung behandelt alles, was Sie über das Erstellen von Conda-Umgebungen wissen müssen, von grundlegenden Befehlen bis hin zu fortgeschrittenen Techniken wie Klonen und YAML-basierter Konfiguration.
Möchten Sie schnell Datenvisualisierungen aus Python Pandas DataFrames ohne Code erstellen?
PyGWalker ist eine Python-Bibliothek für explorative Datenanalyse mit Visualisierung. PyGWalker (opens in a new tab) kann Ihren Jupyter Notebook Datenanalyse- und Visualisierungs-Workflow vereinfachen, indem es Ihr Pandas DataFrame in eine Tableau-ähnliche Benutzeroberfläche für visuelle Exploration verwandelt.
Was ist eine Conda-Umgebung?
Eine Conda-Umgebung ist ein isoliertes Verzeichnis, das eine bestimmte Sammlung von Paketen und deren Abhängigkeiten enthält. Jede Umgebung arbeitet unabhängig und ermöglicht Ihnen:
- Verschiedene Python-Versionen für verschiedene Projekte zu verwenden
- Konfliktäre Paketversionen ohne Probleme zu installieren
- Reproduzierbare Entwicklungs-Setups mit Teammitgliedern zu teilen
- Ihre Basisinstallation sauber und stabil zu halten
Schnellreferenz: Conda-Umgebungsbefehle
| Aufgabe | Befehl |
|---|---|
| Grundumgebung erstellen | conda create --name meinenv |
| Mit Python-Version erstellen | conda create --name meinenv python=3.11 |
| Aus YAML-Datei erstellen | conda env create -f environment.yml |
| Umgebung klonen | conda create --name neueenv --clone alteenv |
| Alle Umgebungen auflisten | conda env list |
| Umgebung aktivieren | conda activate meinenv |
| Umgebung deaktivieren | conda deactivate |
| Umgebung entfernen | conda env remove --name meinenv |
Eine einfache Conda-Umgebung erstellen
Der einfachste Weg, eine Conda-Umgebung zu erstellen, verwendet den Befehl conda create:
conda create --name meinenvDies erstellt eine leere Umgebung namens meinenv. Um sie in einem Workflow zu erstellen und zu aktivieren:
conda create --name meinenv
conda activate meinenvNach der Aktivierung ändert sich Ihre Terminal-Eingabeaufforderung, um den aktiven Umgebungsnamen anzuzeigen.
Eine Umgebung mit einer bestimmten Python-Version erstellen
Die meisten Projekte erfordern eine bestimmte Python-Version. Geben Sie sie bei der Erstellung an:
conda create --name meinenv python=3.11Sie können auch einen Versionsbereich angeben:
# Python 3.10 oder höher
conda create --name meinenv python>=3.10
# Python 3.9.x (beliebige Patch-Version)
conda create --name meinenv python=3.9Unterstützte Python-Versionen
| Python-Version | Status | Empfohlen für |
|---|---|---|
| 3.12 | Aktuell | Neue Projekte, neueste Funktionen |
| 3.11 | Stabil | Produktionsanwendungen |
| 3.10 | Stabil | Die meisten Bibliotheken kompatibel |
| 3.9 | Ausgereift | Legacy-Projektunterstützung |
| 3.8 | Lebensende | Nur Wartung |
Eine Umgebung mit Paketen erstellen
Installieren Sie Pakete während der Umgebungserstellung, um Zeit zu sparen:
conda create --name dataenv python=3.11 numpy pandas matplotlib scikit-learnGeben Sie Paketversionen für Reproduzierbarkeit an:
conda create --name dataenv python=3.11 numpy=1.24 pandas=2.0 matplotlib=3.7Eine Umgebung aus einer YAML-Datei erstellen
Für komplexe Projekte definieren Sie Umgebungen in einer YAML-Datei. Dieser Ansatz ermöglicht Versionskontrolle und einfaches Teilen.
Die environment.yml-Datei erstellen
name: meinprojekt
channels:
- conda-forge
- defaults
dependencies:
- python=3.11
- numpy=1.24
- pandas=2.0
- scikit-learn=1.3
- matplotlib=3.7
- jupyter
- pip
- pip:
- pygwalker
- ein-pip-only-paketDie Umgebung aus YAML erstellen
conda env create -f environment.ymlDieser Befehl liest die Datei und erstellt eine Umgebung mit dem angegebenen Namen und den Paketen.
Eine bestehende Umgebung aus YAML aktualisieren
conda env update -f environment.yml --pruneDas --prune-Flag entfernt Pakete, die nicht in der YAML-Datei aufgeführt sind.
Eine bestehende Umgebung klonen
Duplizieren Sie eine Umgebung, um zu experimentieren, ohne das Original zu beeinflussen:
conda create --name neueenv --clone alteenvDies kopiert alle Pakete und ihre exakten Versionen. Nützliche Szenarien umfassen:
- Paket-Upgrades sicher testen
- Projektspezifische Variationen erstellen
- Eine funktionierende Umgebung vor größeren Änderungen sichern
Umgebungen an benutzerdefinierten Speicherorten erstellen
Standardmäßig speichert Conda Umgebungen im envs-Verzeichnis. Erstellen Sie eine Umgebung an einem anderen Ort mit --prefix:
conda create --prefix ./envs/meinenv python=3.11Aktivieren Sie sie mit dem vollständigen Pfad:
conda activate ./envs/meinenvDieser Ansatz hält Projektabhängigkeiten innerhalb des Projektordners.
Best Practices für Conda-Umgebungen
1. Verwenden Sie beschreibende Namen
Benennen Sie Umgebungen nach Projekten oder Zwecken:
# Gut
conda create --name webapp-backend python=3.11
conda create --name daten-analyse python=3.10
# Vermeiden
conda create --name env1
conda create --name test2. Geben Sie immer die Python-Version an
Explizite Versionen verhindern unerwartetes Verhalten:
conda create --name meinenv python=3.113. Exportieren Sie Umgebungen zum Teilen
Erstellen Sie reproduzierbare Umgebungsdateien:
# Vollständiger Export (plattformspezifisch)
conda env export > environment.yml
# Plattformübergreifender Export
conda env export --from-history > environment.yml4. Verwenden Sie den conda-forge-Kanal
Der conda-forge-Kanal bietet mehr Pakete und schnellere Updates:
conda create --name meinenv -c conda-forge python=3.11 numpy pandas5. Halten Sie Umgebungen minimal
Installieren Sie nur notwendige Pakete. Entfernen Sie ungenutzte Umgebungen regelmäßig mit dem conda env remove Befehl.
Fehlerbehebung bei häufigen Problemen
Umgebungserstellung schlägt fehl
Problem: ResolvePackageNotFound-Fehler
Lösung: Versuchen Sie den conda-forge-Kanal oder überprüfen Sie die Schreibweise des Paketnamens:
conda create --name meinenv -c conda-forge python=3.11 paket-nameLangsame Umgebungserstellung
Problem: Das Lösen der Umgebung dauert zu lange
Lösung: Verwenden Sie mamba, einen schnelleren Drop-in-Ersatz:
conda install -n base -c conda-forge mamba
mamba create --name meinenv python=3.11 numpy pandasConda nach der Installation nicht gefunden
Problem: conda: command not found
Lösung: Initialisieren Sie Conda für Ihre Shell:
conda init bash # oder zsh, fish, powershellDann starten Sie Ihr Terminal neu.
Ihre Umgebungen verwalten
Nach dem Erstellen von Umgebungen müssen Sie diese effektiv verwalten:
- Umgebungen auflisten:
conda env listzeigt alle Umgebungen und ihre Speicherorte - Umgebungen entfernen: Siehe unsere Anleitung zum Entfernen von Conda-Umgebungen für detaillierte Anweisungen
- Pakete aktualisieren: Verwenden Sie
conda update --allin einer aktivierten Umgebung
Conda Create vs Conda Env Create
Zwei Befehle existieren zum Erstellen von Umgebungen:
| Funktion | conda create | conda env create |
|---|---|---|
| Leere Umgebung erstellen | Ja | Nein |
| Pakete inline angeben | Ja | Nein |
| Aus YAML erstellen | Nein | Ja |
| Umgebungen klonen | Ja | Nein |
Verwenden Sie conda create für schnelle, inline Umgebungserstellung. Verwenden Sie conda env create bei der Arbeit mit YAML-Dateien.
FAQ
Wie erstelle ich eine Conda-Umgebung mit einer bestimmten Python-Version?
Verwenden Sie conda create --name meinenv python=3.11 und ersetzen Sie 3.11 durch Ihre gewünschte Version. Conda lädt die angegebene Python-Version herunter und installiert sie in der neuen isolierten Umgebung.
Was ist der Unterschied zwischen conda create und conda env create?
conda create erstellt Umgebungen mit Paketen, die inline in der Befehlszeile angegeben werden. conda env create erstellt Umgebungen aus YAML-Spezifikationsdateien. Verwenden Sie conda create für schnelle Setups und conda env create für reproduzierbare, versionskontrollierte Umgebungen.
Wie erstelle ich eine Conda-Umgebung aus einer requirements.txt-Datei?
Erstellen Sie zuerst die Umgebung, dann installieren Sie aus requirements.txt: conda create --name meinenv python=3.11 gefolgt von pip install -r requirements.txt nach Aktivierung der Umgebung. Für bessere Kompatibilität konvertieren Sie requirements.txt in das environment.yml-Format.
Kann ich eine Conda-Umgebung in einem bestimmten Verzeichnis erstellen?
Ja, verwenden Sie das --prefix-Flag: conda create --prefix ./meinenv python=3.11. Dies erstellt die Umgebung im angegebenen Pfad anstelle des Standard-Conda-envs-Verzeichnisses. Aktivieren Sie sie mit dem vollständigen Pfad.
Verwandte Anleitungen
- Conda-Umgebung entfernen - Erfahren Sie, wie Sie Conda-Umgebungen richtig löschen
- Conda Offizielle Dokumentation (opens in a new tab) - Vollständige Referenz zur Umgebungsverwaltung
