This is the standard Python debugger. It is based on the bdb debugger framework.
You can run the debugger from the command line. Type n (or next) to go to the next line, help to get a list of available commands.
$ pdb.py hello.py > hello.py(0)?() (Pdb) n > hello.py() (Pdb) n hello again, and welcome to the show --Return-- > hello.py(1)?()->None (Pdb)
You can also start the debugger from inside a program.
Example: Using the pdb module
# File: pdb-example-1.py import pdb def test(n): j = 0 for i in range(n): j = j + i return n db = pdb.Pdb() db.runcall(test, 1)
> pdb-example-1.py(3)test() -> def test(n): (Pdb) s > pdb-example-1.py(4)test() -> j = 0 (Pdb) s > pdb-example-1.py(5)test() -> for i in range(n): ...