函数的嵌套定义

'''
# 函数的嵌套定义:在函数内部定义函数
# 诞生的理由:一个函数想使用另一个函数内部的变量,可以定义在其内部
def func():
a = 10
def fn():
print(a)
return fn

new_fn = func()
new_fn()
'''

'''
# global关键字: 统一局部与全局的变量名

a = 100
def fn1():
global a
a = 200 # 让函数的局部变量a与全局变量a统一,两者是一个
print(a)
fn1()
print(a)
'''

# nonlocal关键字:统一局部与嵌套局部的变量名
def fn2():
num = 666
def fn22():
nonlocal num
num = 888
fn22()
print(num)
fn2()


# 作用域:

len = 10
def fn3():
len = 100
def fn33():
len = 1000
print('1:', len)
fn33()
print('2:', len)
fn3()
print('3:', len)

posted @ 2019-04-28 22:28  zhouyuqiang  阅读(5052)  评论(0编辑  收藏  举报