Python 多装饰器
一、理解核心:
1、加载自下往上【每层装饰器都会让被装饰函数发生改变】;
2、执行自上往下;
3、被装饰的函数执行一次;
二、验证:
def doc1(func):
print("this is doc1")
def inner1(*args):
print("开始执行doc1的Inner函数")
func(args[0],args[1])
print("结束执行doc1的Inner函数")
return inner1
def doc2(func):
print("this is doc2")
def inner2(*args):
print("开始执行doc2的Inner函数")
func(args[0],args[1])
print("结束执行doc2的Inner函数")
return inner2
def doc3(func):
print("this is doc3")
def inner3(*args):
print("开始执行doc3的Inner函数")
func(args[0],args[1])
print("结束执行doc3的Inner函数")
return inner3
@doc2
@doc3
@doc1
def future(a,b):
print("我是核心功能")
print(a+b)
future(1,2)