装饰器:装饰器本质上是一个 Python 函数,它可以在让其他函数在不需要做任何代码的变动的前提下增加额外的功能。装
饰器的返回值也是一个函数的对象。
这里写一个简单的统计双层for循环耗时多少,了解装饰器之前得先去了解一下闭包。(不懂留言)代码如下:
import time
def one(fun):
def tow():
start_time = time.time()
fun()
end_time = time.time()
print(f'fun函数小号时间{end_time-start_time}')
return tow
@one
def fun():
for i in range(1,10000):
for j in range(1,10000):
pass
fun()
作用:在装饰器介绍说得很明白了。
应用场景:插入日志、性能测试、事务处理、缓存、权限的校验等场景 有了装饰器就可以抽离出大量的与函数功能本身无关的雷同代码并发并继续使用。