‘’‘多层装饰’’’
‘’‘装饰器的结合性:自下往上看
执行性:自上往下看’’’
def wrap1(func):
print(‘begin1’)
def inner():
print(‘inner1’)
func()
print(‘end wrap1’)
return inner
def wrap2(func):
print(‘begin2’)
def inner():
print(‘inner2’)
func()
print(‘end wrap2’)
return inner
@wrap1
@wrap2
def cost():
print(‘付款’)
if name == ‘main’:
print(’#########’)
cost()
运行结果:
begin2
end wrap2
begin1
end wrap1
#########
inner1
inner2
付款