前言
python nonlocal 关键字和global 关键字区别
一.global关键字
全局关键字,全局可修改变量的值
二.nonlocal关键字
自由关键字,把变量标识为自由变量,可以给不可变类型赋予新值,但是要用在闭包中。
def ceshi():
count = 1
def ceshi_2(value):
nonlocal count
count += 1
total = value
print('ceshi_2:',count)
return count
print('ceshi:',count)
return ceshi_2
a = ceshi()
print(a(10))
print(ceshi())
>>>> ceshi: 1
>>>> ceshi_2: 2
>>>> 2