Skip to content

Conda-Umgebung erstellen: Vollständige Anleitung mit Beispielen

Kanaries Team
Name
Kanaries Team

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.

PyGWalker für Datenvisualisierung (opens in a new tab)

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

AufgabeBefehl
Grundumgebung erstellenconda create --name meinenv
Mit Python-Version erstellenconda create --name meinenv python=3.11
Aus YAML-Datei erstellenconda env create -f environment.yml
Umgebung klonenconda create --name neueenv --clone alteenv
Alle Umgebungen auflistenconda env list
Umgebung aktivierenconda activate meinenv
Umgebung deaktivierenconda deactivate
Umgebung entfernenconda 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 meinenv

Dies erstellt eine leere Umgebung namens meinenv. Um sie in einem Workflow zu erstellen und zu aktivieren:

conda create --name meinenv
conda activate meinenv

Nach 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.11

Sie 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.9

Unterstützte Python-Versionen

Python-VersionStatusEmpfohlen für
3.12AktuellNeue Projekte, neueste Funktionen
3.11StabilProduktionsanwendungen
3.10StabilDie meisten Bibliotheken kompatibel
3.9AusgereiftLegacy-Projektunterstützung
3.8LebensendeNur 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-learn

Geben Sie Paketversionen für Reproduzierbarkeit an:

conda create --name dataenv python=3.11 numpy=1.24 pandas=2.0 matplotlib=3.7

Eine 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-paket

Die Umgebung aus YAML erstellen

conda env create -f environment.yml

Dieser 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 --prune

Das --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 alteenv

Dies 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.11

Aktivieren Sie sie mit dem vollständigen Pfad:

conda activate ./envs/meinenv

Dieser 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 test

2. Geben Sie immer die Python-Version an

Explizite Versionen verhindern unerwartetes Verhalten:

conda create --name meinenv python=3.11

3. 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.yml

4. 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 pandas

5. 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-name

Langsame 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 pandas

Conda 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, powershell

Dann starten Sie Ihr Terminal neu.

Ihre Umgebungen verwalten

Nach dem Erstellen von Umgebungen müssen Sie diese effektiv verwalten:

  • Umgebungen auflisten: conda env list zeigt 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 --all in einer aktivierten Umgebung

Conda Create vs Conda Env Create

Zwei Befehle existieren zum Erstellen von Umgebungen:

Funktionconda createconda env create
Leere Umgebung erstellenJaNein
Pakete inline angebenJaNein
Aus YAML erstellenNeinJa
Umgebungen klonenJaNein

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