Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Python (Installation)

„Das Zen blühender Python-Projekte im Jahr 2025 ist ein Interpreter pro Projekt und eine Werkzeugkette pro Aufgabe. Beherrsche zuerst virtuelle Umgebungen; der Rest folgt natürlich.

Python 2 erreichte das Ende der Lebensdauer im Januar 2020 und wird nicht mehr von Mainstream-Linux-Distributionen oder Windows-Installationsprogrammen ausgeliefert. Heute unterstützt jedes aktiv gepflegte Paket - wissenschaftlich, geospatial oder anderweitig - CPython ≥ 3.9, wobei die meisten Bibliotheken jetzt gegen Python 3.13 testen. Mehrere Interpreter können immer noch auf derselben Maschine koexistieren (QGIS / ArcGIS Pro bettet seine eigene 3.11, Nvidia CUDA liefert eine für PyTorch, etc.), aber die moderne Art, Projekte zu isolieren, ist durch *leichte * virtuelle Umgebungen, die von venv, pipx oder conda/mamba erstellt wurden.

Dieses Kapitel destilliert einen Workflow, der den in diesem E-Book verwendeten Rechenstapel unabhängig von der Plattform zuverlässig erstellt. Er betont:


Bevor Sie fortfahren, kann eine schnelle, plattformübergreifende Python-Installation einschließlich GDAL mit unserer Projektvorlage] installiert werden:

  1. Installieren Sie mamba für Ihre Plattform].

  2. Laden Sie unsere environment.yml] herunter.

  3. Öffnen Sie ein Terminal (Befehlsaufforderung), navigieren Sie zum Verzeichnis, in dem die heruntergeladene * Umgebung angezeigt wird. yml* lebt und schafft die Umwelt:

    mamba env create -f environment.yml
  4. Aktivieren Sie die Umgebung und führen Sie Python aus:

    mamba activate wrr-proj
    (wrr-proj) user@computer:$ python
  5. Überprüfen Sie, ob die Installation von Geopaketen funktioniert hat (es sollte keine Fehlermeldung auftreten):

    >>> from osgeo import gdal
  6. Optionnally, if the check succeeded worked, exit python and pip-install flusstools within this wrr-project environment:

    >>> exit()
    (wrr-proj) user@computer:$ pip install flusstools

pip + venv

Schnellstart (Linux Mint/Ubuntu 22.04 LTS oder höher)

Installieren Sie den neuesten Interpreter

$ sudo apt update && sudo apt install python3 python3-venv python3-dev build-essential libgdal-dev gdal-bin

Moderne Debian/Ubuntu-Repositories verpacken bereits CPython 3. Die zusätzlichen dev-Header werden für Räder benötigt, die C‐Erweiterungen zum Zeitpunkt der Installation noch kompilieren.

Erstellen und Aktivieren einer Umgebung

$ python3 -m venv ~/venvs/vflussenv
$ source ~/venvs/vflussenv/bin/activate

A venv inherits nothing from the system except the interpreter binary.

Upgrade Core Tools

(vflussenv) $ python -m pip install --upgrade pip wheel setuptools

pip 24.x bundles the new repair wheel feature that fixes many‑linux and macOS wheels on the fly.

Einbauvorschriften

Für die Datenanalyse ohne die geospatial GDAL-Bibliothek, laden Sie diese requirements.txt file herunter. Andernfalls, um [Bibliotheken für die Geodatenanalyse einschließen], laden Sie diese requirements.txt](https://github.com/Ecohydraulics/flusstools-pckg/raw/refs/heads/main/requirements.txt) herunter. Installieren Sie die requirements.txt-Datei wie folgt in einer neuen Umgebung namens “vflussenv”.

(vflussenv) $ pip install -r requirements.txt

Binärräder für GDAL, Rasterio, Fiona und Shapely sind seit 2024-10 auf PyPI verfügbar, so dass kein externes PPA mehr erforderlich ist.

Fließwerkzeuge installieren

(vflussenv) $ pip install flusstools

Testen Sie es:

(vflussenv) $ python
>>> import flusstools as ft

conda / mamba - empfohlen unter Windows 11 & plattformübergreifende Datenwissenschaft

2025 Status von GDAL unter Windows

Quick Guide (Anaconda / Miniforge)

  1. Installieren Sie Miniforge 4 (leichter als Anaconda, standardmäßig auf conda-forge) - lesen Sie die Installationsanweisungen auf der Website des Entwicklers website].

  2. Holen Sie sich die flusstools environment.yml] und verwenden Sie es, um die conda flussenv zu erstellen (dauert ein paar Minuten):

    conda env create -f environment.yml
  3. Aktivieren Sie flussenv und installieren Sie flusstools, ein rein PyPi-gehostetes Paket:

    conda activate flussenv
    pip install flusstools
  4. Füge einen Jupyter-Kernel hinzu:

    ipython kernel install --user --name fluss_kernel

Install extra packages with pip

Mehr als 500 000 Projekte leben heute auf PyPI. Basissyntax:

Linux/macOS (venv)
Windows (conda env)

(vflussenv) $ pip install seaborn

Großanlage

E-Book-Beispiele beruhen auf dem folgenden wissenschaftlichen Stack (bereits in der bereitgestellten requirements.txt enthalten):

Installieren Sie sie manuell mit:

(vflussenv) pip install numpy pandas geopandas rasterio rasterstats laspy networkx openpyxl tabulate

Installieren Sie Jupyter Kernel

(vflussenv) pip install ipykernel jupyterlab
(vflussenv) python -m ipykernel install --user --name vfluss_kernel

Wählen Sie vfluss kernel aus Kernel > Kernel ändern innerhalb von JupyterLab.


Aktualisierung von Umgebungen

Aktualisieren der virtuellen Umgebung (venv)

schön - virtualenv macht das einfach. Hier ist ein **robuster Upgrade-Flow, der Ihren aktuellen Venv (vflussenv) behält und sich auf JupyterLab + Jupyter Book konzentriert. keine Conda, keine YAML-Bearbeitungen.

1. Aktivieren & Snapshot für einfaches Rollback

# activate your venv if not already
source vflussenv/bin/activate

# snapshot current state for rollback
pip freeze > requirements-$(date +%Y%m%d).txt

2. Stellen Sie sicher, dass die Build-Toolchain aktuell ist

pip install -U pip setuptools wheel

3. Alte Pakete anzeigen

pip list --outdated

4. Aktualisieren Sie alle Pakete (zwei Optionen)

Option A -- safe loop (exhaustive)
Option B -- "requirements with >="

Aktualisiert jedes * Pip-verwaltete * Paket, außer direkte VCS / URL-Installationen.

python - <<'PY'
import json, subprocess, sys
# get outdated packages in JSON
out = subprocess.check_output(
    [sys.executable, "-m", "pip", "list", "--outdated", "--format=json"],
    text=True
)
# take just the package names
names = [pkg["name"] for pkg in json.loads(out)]

# optional: don't re-upgrade the bootstrap tools every loop
skip = {"pip", "setuptools", "wheel"}
for name in names:
    if name in skip:
        continue
    subprocess.check_call([sys.executable, "-m", "pip", "install", "--upgrade", name])
PY

5 Optional das neue Set anheften

pip freeze > requirements-upgraded-$(date +%Y%m%d).txt

6. Verifizieren

jupyter lab --version
jupyter-book --version
python -c "import sys; print(sys.version)"

7 Aufräumen

Reinigen Sie alte Build-Caches, um Speicherplatz zu sparen:

pip cache purge

Update conda env

1. Erstellen Sie eine Momentaufnahme des aktuellen Zustands (einfaches Rollback)

# exact conda specs
conda list --explicit > conda-specs-$(date +%Y%m%d).txt
# pip packages (if any were installed via pip)
python -m pip freeze > pip-freeze-$(date +%Y%m%d).txt

**2. Optional, aber empfohlen: Behalten Sie Ihre aktuelle Python-Moll-Version **

Dies verhindert einen unerwarteten Python-Sprung, der Konflikte verursachen kann. Passen Sie 3.11.* an was auch immer python --version zeigt:

python --version
# pin to current minor while updating other deps
conda install "python=3.11.*" -c conda-forge

3. Stellen Sie sicher, dass Ihr Solver auf dem neuesten Stand ist

# update conda itself (and mamba if you have it) in base
conda activate base
conda update -n base -c conda-forge conda
# optional: if you use mamba
conda install -n base -c conda-forge mamba
conda activate vflussenv

4. Aktualisieren Sie alle Conda-Pakete

Verwenden Sie strenge Conda-Schmiede für Konsistenz (um Ihre YAML nicht zu ändern).

# with mamba (faster)
mamba update --all -c conda-forge --yes

# or with conda
conda update --all -c conda-forge --yes

5. Wenn Sie pip für einige Pakete verwendet haben, aktualisieren Sie diese auch

Tun Sie dies nur **nach ** dem Conda-Update. Dies hält conda verantwortlich für Kernbibliotheken.

# show what’s outdated (pip-managed only)
python -m pip list --outdated

# upgrade all pip-managed packages (safer loop than xargs)
python - <<'PY'
import subprocess, sys
out = subprocess.check_output([sys.executable, "-m", "pip", "list", "--outdated", "--format=freeze"], text=True)
pkgs = [line.split("==")[0] for line in out.splitlines() if "@" not in line]
for p in pkgs:
    subprocess.check_call([sys.executable, "-m", "pip", "install", "-U", p])
PY

6. Reine Caches

conda clean -a -y

7. Versionen überprüfen

jupyter lab --version
jupyter-book --version
python -c "import sys, jupyterlab; print('py', sys.version);"

Nutzung der Umwelt in IDEs

JupyterLabor

(vflussenv) jupyter lab

Point your browser to https://hydro-informatics.com/lab. Switch kernels via the Kernel menu.

PyCharm


Umgebungen löschen


Installationsgrundlinie