1、装饰器概述
1、装饰器本质:是一个函数,该函数用来处理其他函数,可以让其他函数在不修改代码前提下增加额外的功能,装饰器的返回值可以是一个函数对象。
2、使用场景:插入日志,事务处理,缓存,权限校验等。
3、优点:可以抽离出大量与函数功能本身无关的雷同代码,并且可以复用。
4、总结:为已存在的对象,增加额外的概念。
2、代码演示
1、需求:执行某测试用例,服务器的响应时间是多少?
2、Python代码
2.1、Python代码-初始版本
缺点:
1、函数名称test_001修改后,show_time(test_001)函数也需要修改,比较麻烦。
2、破坏了原有代码的逻辑,预期是执行test_001,但是现在却是在执行show_time。
import time
def test_001():
print('执行测试用例')
time.sleep(1)
def show_time(func):
# 开始时间
start_time = time.time()
func()
# 结束时间
end_time = time.time()
print