from functools
def wrapper(func): #func = holiday
@functools .wraps(func)#增加这个之后下面调用展示的holiday.__name__为holiday,否则为inner
def inner(*args,**kwargs):
print('在被装饰的函数执行之前做的事情')
ret = func(*args,**kwargs)
print('在被装饰的函数执行之后做的事情')
return ret
return inner
@wrapper #holiday = wrapper(holiday)
def holiday(day):
'''这是一个放假通知'''
print('全体放假%s天'%day)
return '好开心'
print(holiday.__name__)
ret = holiday(3) #inner
print(ret)
万能装饰器wraps
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.