pdb commands for python debugging in command line

Posted in tools with : python, productivity


The page is from MIT. Keeping here only for reference.

Startup and Help

python -m pdb <name>.py [args] begin the debugger
help [command] view a list of command, or view help for a specific command

Within a python file:

import pdb
...
pdb.set_trace()
begin the debugger at this line when the file is run normally
l(ist) list 11 lines surrounding the current line
w(here) display the file and line number of the current line
n(ext) execute the current line
s(tep) step into functions called at the current line
r(eturn) execute until the current function's return is encountered

Controlling Execution

b [#] create a breakpoint at line [#]
b list breakpoints and their indices
c(ontinue) execute until a breakpoint is encountered
clear [#] clear breakpoint of index [#]

Changing Variables / Interacting with Code

p <name> print value of variable <name>
!<expr> execute the expression <expr>
run [args] restart the debugger with sys.argv arguments [args]
q(uit) exit the debugger