Debugging with pdb & IDE Debugger
Debugging is finding and fixing bugs. Python has pdb (Python Debugger) built-in, and IDEs like VS Code provide visual debugging tools.
15 min•By Priygop Team•Updated 2026
Debugging
Debugging
# Using pdb (Python Debugger)
# import pdb; pdb.set_trace() # old way
# breakpoint() # Python 3.7+ (preferred!)
# pdb commands:
# n — next line
# s — step into function
# c — continue execution
# p — print variable value
# l — list source code
# q — quit debugger
# h — help
# Demo: debugging a function
def calculate_average(numbers):
"""Bug: doesn't handle empty list."""
# breakpoint() # uncomment to debug
if not numbers:
return 0
total = sum(numbers)
count = len(numbers)
average = total / count
return average
# Test cases
print("=== Debugging Demo ===")
print(f"Average [1,2,3]: {calculate_average([1, 2, 3])}")
print(f"Average []: {calculate_average([])}")
print(f"Average [10]: {calculate_average([10])}")
# VS Code debugging tips:
print("\n=== VS Code Debug Tips ===")
print("1. Click left of line number → set breakpoint")
print("2. F5 → start debugging")
print("3. F10 → step over")
print("4. F11 → step into")
print("5. Shift+F11 → step out")
print("6. Watch variables in sidebar")
print("7. Use Debug Console for expressions")Tip
Tip
Use breakpoints with breakpoint() (Python 3.7+). In VS Code, click the gutter to set breakpoints and use F5 to start debugging.
Diagram
Loading diagram…
Use console.table for objects. console.time to profile. debugger; for breakpoints. Chrome DevTools > console.log.
Common Mistake
Warning
Using only print() for debugging. Learn to use the debugger — it lets you inspect variables, step through code, and evaluate expressions.
Quick Quiz
Practice Task
Note
(1) Set a breakpoint in your code. (2) Step through line by line. (3) Inspect variable values in the debug console.