David - Musings of an SRE

Debugging in Python

Miss being able to inspect, debug and run expressions in between your code?

I’ve heard so much about iPython’s debugging functionality and it turns out there’s a way to make use of it without having to use iPython itself.

Meet ipdb.

With just a couple of simple steps:

import ipdb

print("before break")
ipdb.set_trace()
print("after break")

You’ll drop into a nice interactive shell for your debugging need.

Most syntaxes are similar to ruby-debug, so if you’re coming from ruby, you shouldn’t have any issue.

ipdb screenshot