Questo è il modo in cui useresti pdb nella riga di comando senza implementare nulla nel tuo codice sorgente (la documentazione e altre risorse online non fanno un buon lavoro spiegandolo a un programmatore che ha utilizzato solo debugger visivi in passato):
Avviare pdb digitando quanto segue in un prompt della shell:
python -m pdb 'python_script'
Questo comando inizializza pdb e il debugger pdb si interromperà alla prima riga del tuo python_script e attenderà un tuo input:
(Pdb)
Questa è l'interfaccia per comunicare con il debugger. Ora puoi specificare i tuoi comandi qui. Al contrario di utilizzare pulsanti o scorciatoie da tastiera nei debugger visivi, qui utilizzerai i comandi per ottenere gli stessi risultati.
Puoi passare alla riga successiva del codice con il comando "n" (successivo):
(Pdb) n
L'esecuzione di un successivo visualizzerà il numero di riga e il codice specifico nella sorgente:
> python_script(line number)method name
-> current line in the source code
È possibile impostare un punto di interruzione specificando un numero di riga nel codice sorgente.
(Pdb) b 50
Qui, il debugger è impostato per interrompere alla riga 50. Se non ci sono altri punti di interruzione, il punto di interruzione alla riga 50 sarà il primo e potrebbe essere referenziato dall'id del punto di interruzione che è 1 in questo caso. Se aggiungi più punti di interruzione, otterranno gli identificatori in sequenza (ad esempio, 2, 3 ecc.)
Una volta impostato un punto di interruzione, continuerai a eseguire il programma finché pdb non arriva al punto di interruzione come segue:
(Pdb) c
Una volta raggiunto un punto di interruzione, è possibile passare alla riga successiva, con il comando n come descritto in precedenza. Se vuoi esaminare i valori delle variabili, devi eseguire il comando del parametro come segue:
(Pdb) p variable_name
Se non hai più bisogno di un breakpoint, puoi cancellarlo passando l'id del breakpoint con il comando clear:
(Pdb) clear 1
Infine, quando hai finito con il debugger puoi uscire dall'esecuzione come faresti per uscire dall'interprete della riga di comando python.
(Pdb) exit()
Spero che questo aiuti chiunque a iniziare con pdb. Ecco un elenco di comandi che puoi usare con il debugger: pdb quindi domande e risposte