2009-03-19 10 views
5

Voglio eseguire il debug di un progetto di pitonePosso avviare debugging pdb subito?

Il problema è, non so dove impostare un punto di interruzione,

quello che voglio fare, è essere in grado di chiamare un metodo

SomeClass(some_ctor_arguments).some_method()` 

e far sparare il debugger subito

Come si fa?

ho cercato pdb.run(string_command) ma non sembra funzionare a destra

>>> import pdb 
>>> import <some-package> 
>>> pdb.run(....) 
> <string>(1)<module>() 
(Pdb) s 
NameError: "name '<some-package>' is not defined" 

risposta

5

Trovato ..

pdb.runcall(object.method) 
+0

Non sapevo che potevi farlo, grazie! – itsadok

+0

puoi anche avviare pdb dalla riga di comando per farlo funzionare prima di qualsiasi cosa nel tuo script. python -m pdb yourscript.py – Chad

4
pdb.set_trace() 

inizierà il debugger a questo punto.

Posizionarlo all'inizio del metodo che si desidera eseguire il debug.