一、什么是python装饰器(Decorators)
定义:python的装饰器:装饰原有的函数,用于拓展原来函数功能的一种函数,在不更改原来函数代码的基础上,增加函数的功能。
格式:@ 符号就是装饰器的语法糖,它放在函数开始定义的地方,这样就可以省略最后一步再次赋值的操作。
二 、装饰器返回值及用处
装饰器的返回值也是一个函数/类对象。它经常用于有切面需求的场景,比如:插入日志、性能测试、事务处理、缓存、权限校验等场景,装饰器是解决这类问题的绝佳设计。
装饰器的具体详解可学习此链接
三、用法:
1、函数装饰器
用@函数名,装饰器可以嵌套函数,分为装饰器带参数和不带参数的。用法可参照以下代码使用。
代码引用自:
def demo1(demo_name):
def wrapper(fun):
print(demo_name, "wrapper")
fun()
# end def
@wrapper
def test():
print(demo_name, "test")
# end def
test # 调用test方法,此处不能加()。
# end def(demo)