Here's a little test to make sure you understand (this is one of the most confusing parts of Python's closures in my opinion):
foo = "I'm foo!"
def working():
print(foo)
def broken():
print(foo)
if False: # There's no way this could cause a problem!
foo = "This will *never* happen"
--
http://mail.python.org/mailman/listinfo/python-list
