ipdb exports functions to access the IPython debugger, which features tab completion, syntax highlighting, better tracebacks, better introspection with the same interface as the pdb module.
import ipdb ipdb.set_trace() ipdb.pm() ipdb.run('x = 3') result = ipdb.runcall(function, arg0, arg1, kwarg='foo') result = ipdb.runeval('f(1,2) - 3')
The post-mortem function,
ipdb.pm(), is equivalent to the magic function
If you install
ipdb with a tool which supports
setuptools entry points,
ipdb script is made for you. You can use it to debug your scripts like
$ bin/ipdb mymodule.py
With Python 2.7 only, you can also use
$ python -m ipdb mymodule.py
You can also enclose code with the
with statement to launch ipdb if an exception is raised:
from ipdb import launch_ipdb_on_exception with launch_ipdb_on_exception(): [...]
ipdb source code and tracker are at https://github.com/gotcha/ipdb.
Zope2 Products.PDBDebugMode uses
ipdb, if available, in place of
iw.debug allows you to trigger an
ipdb debugger on any published object
of a Zope2 application.