当有很多函数都需要在某一个时间内需要装饰是,通过三层嵌套,可以实现对多个函数进行装饰。

import time FLAGE = False def timeer_out(flag): def timeer(func): def inner(*args,**kwargs): if flag: start = time.time() ret = func(*args,**kwargs) end = time.time() print(end - start) return ret else: ret = func(*args,**kwargs) return ret return inner return timeer @timeer_out(FLAGE) def lala(): time.sleep(0.1) print("小垃圾") lala()
例如这个函数,当你需要调用测试它的运行时间时,可以通过1设置一个参数来控制。当FLAG为False时就不会执行装饰器。
当为Ture时。就会执行。