1 闭包
嵌套定义,内部函数使用外部函数中定义的变量,外部函数返回内部函数名。
如果调用一个函数
A
,这个函数
A
返回一个函数
B
,这个返回的函数
B
就叫作闭包。
def func_out(num1):
def func_in(num2):
return num1+num2
return func_in
f=func_out(10)
result=f(20)
# result=func_out(10)(20)
print('结果:',result) #30
2 装饰器
装饰器就是一种闭包,它可以使闭包的访问方式更简单。
在定义装饰器函数或类时,使用“
@
装饰器名称”的形式将符号“
@
”放在函数或类的定义行之前。