python---闭包函数应用---装饰器

导图

装饰器模板
from functools import wraps
def moban(func): #func 传入被装饰函数
@wraps(func) #将func的内置属性换到wrapper
def wrapper(args,**kwargs): #添加新扩展 需求
wrapper.name =func.name #内置属性换过来 相当于wraps(func)
wrapper.doc=func.doc
res=func(
args,*kwargs) # 调用原函数,取得原函数的返回值
return res #返回原函数的返回值
return wrapper
func=moban(func) #相当于在函数正上方 @moban

posted @ 2020-06-18 15:19  qeeq  阅读(194)  评论(0编辑  收藏  举报