def f1(): nonlocal x #fail def f2(): def g(): nonlocal x #fail print(x) x = 1 def f3(): nonlocal x #fail x = 2 def f4(): x = 0 def g(): nonlocal x #pass x = 2 return x return g()