定义:
装饰器:本质是函数,装饰其他函数。为其他函数添加附加功能。高阶+嵌套=装饰器
原则:
- 不能修改被装饰函数的源代码
- 不能修改被装饰函数的调用方式
知识储备:
格式:
def deco_name(func): def deco(*args,**kwargs) func(*args,**kwargs) 功能B return deco
@add #raw_func=deco_name(raw_func)
def raw_func(): 功能A
raw_finc()
示例:
import time def count_time(func) def deco() start_time=time.time() func() stop_time=time.time() print('the time is %s'%(start_time-stop_time)) return deco
@count_time
def suspend(): time.sleep(3) print('延迟三秒后输出这句话)
suspend()