一,什么是装饰器
装饰器:本质就是函数,功能是为其他函数添加附加功能
原则
1,不修改被修饰函数的源代码
2,不修改被修饰函数的调用方式
举例说明:有一个求和函数要求就算出函数的运行时间 正常代码应该这样day20-1.py
import time
def cal(l):
start_time=time.time()
res=0
for i in l:
res+=i
stop_time=time.time()
print(‘函数的运行时间是%s‘%(stop_time-start_time))
return res
res = cal(range(1,1001))
print(res)
函数的运行时间是0.0
500500
假如有多个函数都需要这种统计时间的功能,遵循开放封闭的原则不能修改函数源代码,这时候就可以使用装饰器day20-2.py