- Python 中函数就是一个作用域,局部变量放置在其作用域中
- 代码定义完成后作用域已经生成,作作用域链向上查找
#例1
age = 19
def func1():
def func2():
print(age)
return func2 #返回函数名,不执行
print(func1())
>> <function func1.<locals>.func2 at 0x000002457D5060D0>
#例2
age = 19
def func1():
age = 73
def func2():
print(age)
return func2 #返回函数名,不执行
val = func1() # val = func2
print(val)
val() #返回函数同时也返回其作用域,所以输出73
>>
<function func1.<locals>.func2 at 0x00000257F6FD60D0>
73