If you’d like to debug your code if only it throws an uncaught exception run:

$ python -m ipdb your_program.py

Info

You can use default debugger — pdb, but I prefer ipdb.

Install it with: pip install ipdb

If you don’t provide the -c continue flag then you’ll need to enter ‘c’ — Continue, when execution begins. So it’s better to use it with the flag:

$ python -m ipdb -c continue your_program.py

And since I use it a lot, I got an alias for it:

alias pd='python -m ipdb -c continue'

All done!