Debugging in Python

Wenn Code nicht das tut, was er soll, helfen systematische Werkzeuge – vom einfachen Logging bis zum interaktiven Debugger.

1. print() und logging

import logging
logging.basicConfig(level=logging.DEBUG)
logging.debug("Wert: %s", wert)
logging.info("Verarbeitung gestartet")
logging.error("Fehler bei: %s", pfad)

Logging ist besser als print: mit Zeitstempel, Level und konfigurierbar. In Produktion loggt man auf INFO/ERROR, nicht DEBUG.

2. pdb – der eingebaute Debugger

import pdb; pdb.set_trace()   # Breakpoint (Python < 3.7)
# oder modern:
breakpoint()                  # Python 3.7+

Im Debugger: n (next), s (step into), c (continue), p variable (Wert anzeigen), q (quit).

3. IDE-Debugger und Profiling

VS Code und PyCharm bieten grafische Debugger mit Breakpoints und Variablen-Inspektion. Für Performance-Probleme: cProfile oder py-spy für laufende Prozesse.

Weiterlesen: Exceptions verstehen · Python für Einsteiger · Git-Grundlagen