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 pip koexistieren: Selten fehlende Pakete lassen sich per pip install in 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.