So würden Sie pdb in der Befehlszeile verwenden, ohne etwas in Ihrem Quellcode zu implementieren (die Dokumentation und andere Online-Ressourcen erklären dies nicht gut einem Programmierer, der in der Vergangenheit nur visuelle Debugger verwendet hat):
Starten Sie pdb, indem Sie Folgendes in eine Shell-Eingabeaufforderung eingeben:
python -m pdb 'python_script'
Dieser Befehl initialisiert pdb und der pdb-Debugger wird in der ersten Zeile Ihres python_script unterbrochen und wartet auf eine Eingabe von Ihnen:
(Pdb)
Dies ist die Schnittstelle für die Kommunikation mit dem Debugger. Jetzt können Sie hier Ihre Befehle angeben. Im Gegensatz zur Verwendung von Schaltflächen oder Tastaturkürzeln in visuellen Debuggern verwenden Sie hier Befehle, um dieselben Ergebnisse abzuleiten.
Sie können mit dem Befehl "n" (weiter) zur nächsten Zeile in Ihrem Code wechseln:
(Pdb) n
Wenn Sie einen nächsten Vorgang ausführen, werden die Zeilennummer und der spezifische Code in der Quelle angezeigt:
> python_script(line number)method name
-> current line in the source code
Sie können einen Haltepunkt festlegen, indem Sie eine Zeilennummer in Ihrem Quellcode angeben.
(Pdb) b 50
Hier ist der Debugger so eingestellt, dass er in Zeile 50 unterbrochen wird. Wenn keine anderen Haltepunkte vorhanden sind, ist der Haltepunkt in Zeile 50 der erste und kann durch die Haltepunkt-ID referenziert werden, die in diesem Fall 1 ist. Wenn Sie weitere Haltepunkte hinzufügen, erhalten diese nacheinander Bezeichner (z. B. 2, 3 usw.).
Sobald ein Haltepunkt festgelegt ist, führen Sie Ihr Programm weiter aus, bis pdb den Haltepunkt wie folgt erreicht:
(Pdb) c
Sobald Sie einen Haltepunkt erreicht haben, können Sie mit dem Befehl n wie zuvor beschrieben zur nächsten Zeile wechseln. Wenn Sie die Werte von Variablen untersuchen möchten, führen Sie den Parameterbefehl wie folgt aus:
(Pdb) p variable_name
Wenn Sie keinen Haltepunkt mehr benötigen, können Sie ihn löschen, indem Sie die ID des Haltepunkts mit dem Befehl clear übergeben:
(Pdb) clear 1
Wenn Sie mit dem Debugger fertig sind, können Sie die Ausführung wie den Python-Befehlszeileninterpreter beenden.
(Pdb) exit()
Ich hoffe, dies wird jedem helfen, mit pdb zu beginnen. Hier ist eine Liste von Befehlen, die Sie mit dem Debugger verwenden können: pdb also Fragen und Antworten