Conda ist ein plattformunabhängiger Paket- und Umgebungsmanager, ursprünglich von Continuum Analytics (heute Anaconda Inc.) entwickelt und 2012 veröffentlicht. Anders als pip löst Conda nicht nur Python-Pakete, sondern auch Binärabhängigkeiten plattformübergreifend auf und erstellt isolierte Umgebungen mit eigenen Python-Versionen — der Standard für Data-Science-Projekte und die Basis von Jupyter-Installationen.
Umgebungen verwalten
conda create -n myenv python=3.11 # neue Umgebung mit Python-Version
conda activate myenv # Umgebung aktivieren
conda deactivate # Umgebung verlassen
conda env list # alle Umgebungen auflisten
conda env remove -n myenv # Umgebung komplett löschen
conda create --name backup --clone myenv # Umgebung klonen
Pakete installieren und verwalten
conda install pandas # Paket in aktiver Umgebung installieren
conda install -c conda-forge numpy # aus bestimmtem Kanal installieren
conda install scipy=1.11.0 # bestimmte Version installieren
conda update --all # alle Pakete aktualisieren
conda update conda # Conda selbst aktualisieren
conda list # installierte Pakete anzeigen
conda search tensorflow # verfügbare Versionen suchen
conda remove -n myenv requests # Paket aus Umgebung entfernen
Kanal conda-forge und Reproduzierbarkeit
Standard-Kanäle sind defaults (Anaconda) und der Community-Kanal conda-forge, der die meisten und aktuellsten Pakete bereitstellt. Für reproduzierbare Umgebungen exportiert man die Konfiguration als YAML-Datei:
conda env export > environment.yml # aktuelle Umgebung exportieren
conda env create -f environment.yml # Umgebung aus Datei erstellen
conda env update -f environment.yml # bestehende Umgebung anpassen
Praxis-Tipps
- Miniconda ist die schlanke Variante ohne vorinstallierte Pakete — genug für die meisten Projekte; Anaconda bringt die komplette Data-Science-Distribution mit.
- Conda und
pipkoexistieren: Selten fehlende Pakete lassen sich perpip installin der aktiven Conda-Umgebung nachinstallieren. - Für jeden größeren Python- oder Data-Science-Vorhaben eine eigene Umgebung anlegen — so bleiben Projekte unabhängig voneinander.
Conda bildet die Umgebungsbasis für Python-Projekte, Jupyter und IPython. Auch Datenbank-Client-Tools wie MySQL oder MongoDB lassen sich damit umgebungsweise bereitstellen.