装饰器:给现有的模块增添新的小功能,可以对原函数进行功能扩展,而且还不需要修改原函数的内容,也不需要修改原函数的调用
例:已有函数A B C 想在其基础上再加上一个小功能X
def deco(A):
def wrapper(*args,**kwargs):
res=A(*args,**kwargs)
return res
return wrapper
其实wrapper就是实现了A+X的新功能函数
装饰器做的①传入你想要添加小功能X的函数
② 然后返回实现了添加功能的函数名wrapper
最后再调用wrapper
但一般来说为了使得添加了功能X的A看上去还是A 我们一般把A=wrapper 然后再调用A() 实际上就是调用wrapper 两者没有区别
标签:功能,调用,函数,python,wrapper,理解,装饰,原函数 From: https://www.cnblogs.com/yyyjw/p/17862580.html