装饰器
2020-09-10 本文已影响0人
庄周幻梦
"""
@装饰器
- 普通装饰器
- 带参数的装饰器
- 通用装饰器
- 装饰器装饰类
- 内置装饰器
- 缓存装饰器
- 类实现装饰器
装饰器实际调用的是装饰器内部嵌套的函数
开放封闭原则:
开放:对已实现的功能代码扩展时开放的
封闭:对已实现的功能代码,内部代码的修改是封闭的
"""
import time
def count_time(func):
def new(*args, **kwargs):
start_time = time.time()
func(*args, **kwargs)
end_time = time.time()
print(f'RUN TIME is {end_time - start_time}')
return new
@count_time
def demo1():
for i in range(1, 6):
print(f'-----{i}-----')
time.sleep(0.5)
@count_time
def demo2(name):
for i in range(1, 6):
print(f'{name}:-----{i}-----')
time.sleep(0.5)
demo1()
demo2("Tester")