Step by Step Debugger gesucht

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
exidio
User
Beiträge: 18
Registriert: Dienstag 7. November 2017, 12:18

Hallo liebe Community,

auf dem Berufskolleg hatte ich eine IDE für Assembler und C/C++, die jede einzelne Zeile durchgegangen ist mit einem Pfeil an der Seite, bei Calls und GoTo´s hin- und ggf. wieder zurück gesprungen ist, plus die Anzeiger der Variablen und deren Werte. So konnte man den exakten Verlauf des Programms nachvollziehen, welche Zeile nach welcher kommt. Gibt es sowas auch für Python? Nach einiger Suche habe ich nichts entsprechendes gefunden und auch der Debugger von PyCharm liefert es nicht so wie gewollt, oder ich bekomme es zumindest nicht hin...

Vielen Dank schonmal!
Sirius3
User
Beiträge: 17741
Registriert: Sonntag 21. Oktober 2012, 17:20

@exidio: was tut denn nicht so, wie Du willst bei PyCharm?
exidio
User
Beiträge: 18
Registriert: Dienstag 7. November 2017, 12:18

@Sirius3: Ich finde zumindest keine Einstellung für folgendes: Ich möchte Zeile für Zeile des Programms durchgehen, und die entsprechende Zeile möchte ich angezeigt haben, welche auch wirklich dran ist. Optimal wäre es wie in der IDE für Assembler (hab leider den Namen nicht mehr...): Debugger wird gestartet. Es werden alle Variablenwerte von der aktuellen Zeile angezeigt. Mit den Pfeiltasten konnte man die nächste Zeile durchgehen (bei einem GoTo sprang es an die entsprechende Zeile, das ist eben mein Wunsch) und hat die neuen Werte angezeigt.
Benutzeravatar
kbr
User
Beiträge: 1487
Registriert: Mittwoch 15. Oktober 2008, 09:27

@exidio: PyCharm kann alles das, was Du Dir wünschst. Die Buttons dafür sind üblicherweise im oberen Bereich der Fenster. Genauso bei Spyder – den gibt es kostenfrei mit der Anaconda-Distribution. Oder verwende pdb, was auf der Konsole stattfindet und Bestandteil der Standard-Library ist.
__deets__
User
Beiträge: 14529
Registriert: Mittwoch 14. Oktober 2015, 14:29

Ich benutze den von kbr schon besprochenen pdb. Einfach an einer Stelle die nicht funktioniert ein

Code: Alles auswählen

import pdb; pdb.set_trace()
einfuegen, und gut ist. Zuzugebendermassen ist das nicht ganz so bequem wie eine IDE, aber funktioniert sehr gut und zeigt dir auch die Code-Zeilen an. Und weil es Python ist, kannst du auch gleich kleine Ausdruecke schreiben, und mit deinen Objekten rumspielen. Noch besser wird's dann mit IPython, aber irgendwie gewoehne ich mir das zu langsam an...
Antworten