pytest von Null
Automatische Tests statt Durchklicken: pytest finden, schreiben und ausführen – mit assert, Fixtures, Parametrisierung, tmp_path, monkeypatch und pytest.raises.
ls -lt posts/ | grep #python
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.
print hilft beim schnellen Nachsehen, logging begleitet laufende Programme: Levels, Logger pro Modul, Formatierung, Dateien und Tracebacks.
Dateien lesen und schreiben mit with, pathlib und JSON – damit der Dungeon seinen Spielstand speichern und später wiederherstellen kann.
Warum len(x), x + y, x[index] und for element in x funktionieren: Mit Dunder-Methoden bindest Du eigene Klassen in Pythons Datenmodell ein.
Exceptions verstehen und gezielt behandeln: try, except, else, finally, eigene Fehlerklassen und EAFP – damit der Dungeon auf ungültigen Input reagiert, statt abzustürzen.