# 装饰器的本质: 闭包函数
# 功能: 就是在不改变原函数调用方式的情况下,在这个函数前后加上扩张功能
def timemer(func):
def inner(*args,**kwargs):
'''添加函数调用之前的扩展代码'''
ret = func(*args,**kwargs)
'''添加函数调用之后的扩展代码'''
return ret
return inner
# 设计模式 原则 开放封闭原则
# 对扩展是开放的
# 对修改是封闭的
import time
def wrapper(func): #装饰
def inner(*args,**kwargs):
start = time.time()
ret = func(*args,**kwargs)
end = time.time()
print(end - start)
return ret
return inner
@wrapper #语法糖
def lll():
time.sleep(0.1)
print('hello')
lll()
---
hello
0.10107421875
相关文章
- 12-03what's the python之函数及装饰器
- 12-03python中的迭代器 生成器 装饰器
- 12-03python 装饰器练习题
- 12-03老男孩python学习自修第十七天【装饰器】
- 12-03python 类中的某个函数作为装饰器
- 12-03Python入门day18——有参装饰器
- 12-03Day18 有参装饰器 迭代器 生成器
- 12-03[学习记录]python装饰器、getter、setter
- 12-03day14(带参装饰器,迭代器,生成器,枚举对象)
- 12-03装饰器