Python装饰器是一个很出名的设计模式,它主要的功能就是不改变函数已有功能的情况下对函数起到一个锦上添花的作业,使函数的功能更加丰富,在插入日志,性能测试,缓存机制和权限验证都是比较好的左右。不同的函数可以使用同一个装饰器,所以它和函数本身不存在什么必然的联系。
从一个函数分别开始处和退出时输出日志,这被称为一个横切面,这种方式的编程我们称为AOP面向切面编程,其目的在于解耦和复用。
def timeit(func):
def tim(*args,**kwargs):
print('start: ')
func(*args,**kwargs);
print('end .');
return tim;
@timeit
def sayHi(name):
print('hi ',name)
sayHi('Maty')
start:
hi Maty
end .
本文深入探讨了Python装饰器的设计模式,介绍了如何不改变原有函数功能的前提下增强其特性,如插入日志、性能测试等。通过具体示例展示了装饰器的使用方法,包括面向切面编程(AOP)的概念。
1044

被折叠的 条评论
为什么被折叠?



