Breakpoint setzen:
import pdb;pdb.set_trace()
Vim Benutzer können sich auch gleich eine Abkürzung definieren:
autocmd FileType python :ab breakpoint import pdb;pdb.set_trace()
Ausführung Verfolgen:
python -m trace --trace modul.py
Gibt jede Zeile aus die Ausgeführt wird. Ist in einigen fällen ganz Nützlich
Hat wer noch mehr?
Ein paar Tipps zum Debuggen
``print``-Anweisungen und (Unit-)Tests sind auch ganz nützlich, wobei letztere eher zur Vermeidung als zur Suche von Fehlern.
- birkenfeld
- Python-Forum Veteran
- Beiträge: 1603
- Registriert: Montag 20. März 2006, 15:29
- Wohnort: Die aufstrebende Universitätsstadt bei München
Exceptions ausgeben und trotzdem behandeln lassen:
Code: Alles auswählen
try:
foo
except bar:
import traceback; traceback.print_exc()
baz
- veers
- User
- Beiträge: 1219
- Registriert: Mittwoch 28. Februar 2007, 20:01
- Wohnort: Zürich (CH)
- Kontaktdaten:
Noch etwas für ipython (werden die meisten wohl schon kennen):
Mit %pdb lässt sich post mortem debugging aktivieren - daher ipython wechselt automatisch in den Debugger bei einer ungefangenen Exception.
Mit %pdb lässt sich post mortem debugging aktivieren - daher ipython wechselt automatisch in den Debugger bei einer ungefangenen Exception.