Inicie o depurador Python enquanto executa simultaneamente o módulo como script
Ao desenvolver um pacote Python, é muito conveniente usar o-m
opção para executar módulos dentro do pacote como scripts para testes rápidos. Por exemplo, parasomepackage
com módulosomemodule.py
dentro dele, invocando
python -m somepackage.somemodule
do diretório ondesomepackage
reside será executadosomemodule.py
como se o sub-módulo fosse__main__
. Usar essa sintaxe de chamada é especialmente importante se o pacote estiver usando importações relativas explícitas, conforme descritoAqui.
Da mesma forma, também é conveniente usar o-m
opção para depurar um script, como em
python -m pdb somescript.py
Existe alguma maneira de fazer as duas coisas ao mesmo tempo? Ou seja, posso chamar um módulo como se fosse um script e iniciar simultaneamente o depurador? Eu percebo que posso entrar no próprio código e inseririmport pdb; pdb.set_trace()
onde eu quero quebrar, mas estou tentando evitar isso.