Learn to debug a Python program using PDB

Debugging is the process of removing errors from your code. No, I am not talking about syntactical errors (we have compilers for that), I am talking about logical errors. Knowing tools like pdb can save you hours of head scratching and frustration when your code is not working as intended behavior or crashes unexpectedly (happens all the time).

This is a companion discussion topic for the original entry at http://iq.opengenus.org/debugging-with-pdb-in-python/