Вложенные определения функций
# -*- encoding: utf-8 -*-
"""
Вложенные определения функций
"""
def f1():
x = 88
def f2(x=x):
print x
f2()
f1() # prints 88
def f1():
x = 99
def f2():
def f3():
print x
f3()
f2()
f1()
def func():
x = 4
action = (lambda n: x ** n) # x in enclosing def
return action
x = func()
print x(2) # prints 16