# 在一个函数内部定义另一个函数
# 函数对象(变量)与普通对象(变量)一样,在函数内部定义,随函数调用而产生,
# 调用结束而销毁,所以只能在函数内部调用
def outer():
print('outer run')
a = 10
def inner():
a = 100
print('inner run')
print(a)
inner()
#print(a) #报错 ,此a未定义
outer()
输出:
outer run
inner run
10
# 作用域:变量(名字|对象)起作用的范围
print(len) # 1:内置 len = 1 def outer(): len = 10 print(len) def inner(): len = 100 print(len) # 2:inner内部 inner() print(len) # 3:outer内部 outer() print(len) # 4: 全局