How to Dry Run Python Code: Step-by-Step Method
Step 1: Inventory names
List every variable, parameter, and relevant builtin. Note which objects are mutable. Mark global versus local scope before you execute line one.
Step 2: Execute one line
Never skip lines. For compound statements, expand: a for loop becomes many lines; a list comprehension becomes an explicit loop in your scratch work.
Step 3: Track stdout separately
Maintain an output buffer. print adds text exactly - including spaces, commas as spaces between items, and trailing newlines unless end= changes it.
print('a', 'b', sep='-')
# stdout: a-b plus newlineSteps 4–5: Verify edge cases and narrate
Check empty inputs, single-element collections, and off-by-one bounds. In interviews, narrate your table; silence reads as guessing. Practice the full method on challenge.html with timed mode enabled.