Ein paar Tipps zum Debuggen

Code-Stücke können hier veröffentlicht werden.
Antworten
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

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? :)
BlackJack

``print``-Anweisungen und (Unit-)Tests sind auch ganz nützlich, wobei letztere eher zur Vermeidung als zur Suche von Fehlern.
Benutzeravatar
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
Dann lieber noch Vim 7 als Windows 7.

http://pythonic.pocoo.org/
Benutzeravatar
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.
Antworten