两个装饰器装饰一个函数
def set_fun1(func1):
print("set_fun1")
def call_fun1():
print("call_fun1")
func1()
return call_fun1
def set_fun2(func2):
print("set_fun2")
def call_fun2():
print("call_fun2")
func2()
return call_fun2
@set_fun2
@set_fun1
def test():
print("test")
test()
运行结果
set_fun1
set_fun2
call_fun2
call_fun1
test
装饰器主要记住作用:装饰器就是在不改变原有的函数的情况下,为函数增加额外的功能,主要用于权限认证机制