É assim que você usaria pdb na linha de comando sem implementar nada em seu código-fonte (a documentação e outros recursos online não fazem um bom trabalho explicando isso a um programador que usou apenas depuradores visuais no passado):
Inicie o pdb digitando o seguinte em um prompt de shell:
python -m pdb 'python_script'
Este comando inicializa o pdb e o depurador pdb irá quebrar na primeira linha do seu python_script e esperar por uma entrada sua:
(Pdb)
Esta é a interface para comunicação com o depurador. Agora, você pode especificar seus comandos aqui. Ao contrário do uso de botões ou atalhos de teclado em depuradores visuais, aqui você usará comandos para obter os mesmos resultados.
Você pode ir para a próxima linha em seu código pelo comando "n" (próximo):
(Pdb) n
Executar um próximo exibiria o número da linha e o código específico na fonte:
> python_script(line number)method name
-> current line in the source code
Você pode definir um ponto de interrupção especificando um número de linha em seu código-fonte.
(Pdb) b 50
Aqui, o depurador é definido para quebrar na linha 50. Se não houver nenhum outro ponto de interrupção, o ponto de interrupção na linha 50 será o primeiro e pode ser referenciado pelo id do ponto de interrupção que é 1 neste caso. Se você adicionar mais pontos de interrupção, eles obterão identificadores sequencialmente (ou seja, 2, 3 etc.)
Depois que um ponto de interrupção é definido, você deve continuar executando seu programa até que o pdb chegue ao ponto de interrupção da seguinte maneira:
(Pdb) c
Depois de chegar a um ponto de interrupção, você pode ir para a próxima linha, com o comando n conforme descrito anteriormente. Se quiser examinar os valores das variáveis, execute o comando de parâmetro da seguinte maneira:
(Pdb) p variable_name
Se você não precisa mais de um ponto de interrupção, pode limpá-lo passando a id do ponto de interrupção com o comando limpar:
(Pdb) clear 1
Finalmente, quando terminar de usar o depurador, você pode sair da execução da mesma forma que sairia do interpretador de linha de comando python.
(Pdb) exit()
Espero que isso ajude alguém a começar a usar PDB. Aqui está uma lista de comandos que você pode usar com o depurador: pdb so question and answers