Decorators entmystifiziert
Was hinter dem @ steckt: Funktionen sind Objekte, Closures verpacken Verhalten, functools.wraps erhält Metadaten – und Decorators werden damit alltagstauglich.
ls -lt posts/ | grep #python
Was hinter dem @ steckt: Funktionen sind Objekte, Closures verpacken Verhalten, functools.wraps erhält Metadaten – und Decorators werden damit alltagstauglich.
Werte auf Abruf statt alle auf einmal: wie yield funktioniert, warum Generatoren Speicher sparen und wozu Generator Expressions, yield from und Pipelines gut sind.
Click baut CLIs aus Decorators: Optionen, Argumente, Unterbefehle, Prompts, Fehlerbehandlung und Tests mit CliRunner – der Baukasten, auf dem auch Typer aufsetzt.
Typen annotieren, ohne Pythons Dynamik zu verlieren: moderne Type-Hint-Syntax, typische Stolperfallen und der praktische Einstieg mit mypy, Pyright, ty und Pyrefly.
Automatische Tests statt Durchklicken: pytest finden, schreiben und ausführen – mit assert, Fixtures, Parametrisierung, tmp_path, monkeypatch und pytest.raises.
Ein gutes CLI nimmt Argumente, Optionen und Unterbefehle entgegen. Mit argparse geht das ohne Abhängigkeiten, mit Typer modern über Type Hints.
Zum Abschluss: nützliche Module aus der Standardbibliothek, Generatoren, Decorators und der Ausblick auf Type Hints, Tests, Packaging und async.
uv bündelt Paketinstallation, virtuelle Umgebungen, Projektverwaltung, Python-Versionen und isolierte Tools – schnell, reproduzierbar und mit modernen Workflows für pyproject.toml und uv.lock.
Code auf mehrere Dateien aufteilen: eigene Module, import, der __main__-Block, klare Verantwortlichkeiten – plus ein erster Einstieg in venv und pip.
Statt überall print zu streuen: Mit breakpoint() und pdb hältst Du Python-Code gezielt an, inspizierst Variablen und gehst Schritt für Schritt durch den Ablauf.