Comprehension Variable Versus For Loop Variable

squares = [n * n for n in range(5)]

for m in range(5):
    pass

print(squares)
print(m)
print(n)

What happens when this runs?

A

Prints [0, 1, 4, 9, 16], then crashes with NameError on print(m)

B

Prints [0, 1, 4, 9, 16], then 4, then crashes with NameError on print(n)

C

Prints [0, 1, 4, 9, 16], then 4, then 4

D

Crashes with NameError immediately, on the comprehension line