闭包:
两个函数的嵌套,外部函数返回内部函数的引?,外部函数?定有参数
def 外部函数(参数):
def 内部函数():
pass
return 内部函数
他跟函数之间的区别:
1.格式两个函数嵌套
2.闭包外部函数的参数可以在内存中保持
装饰器是什么:闭包加@xxx
装饰器的作?:在不改变原先的函数值跟调?的?式,添加额外的功能
装饰器的代码:
def set_fun(func):
def call_fun(*args,**kwargs):
return func(*args,**kwargs)
return call_fun
@set_fun
def test():
pass
1.装饰前的函数test,是由func指向的 2.装饰后的函数test,实际是call_fun 3.装饰前test,装饰后test,装饰后的test(call_fun)三者保持?致 4.装饰器不能去改变函数的调??式跟返回值
?个装饰器?个函数的理解
?个装饰器装饰?个函数的图解:
?个装饰器装饰器?个函数内存图了解:
原文地址:https://www.cnblogs.com/168vincent/p/9245544.html
时间: 2024-10-28 20:09:38