python 装饰器模式

装饰器模式主要有2个用途:

  • 增强一个组件向另一个组件发送数据时的响应能力 ;
  • 支持多种可选行为 ;

装饰器执行顺序:

def wrapper1(func):
    print("........wrapper1---------")

    def inner1(*args, **kwargs):
        print("........inner1---------")
        func(*args, **kwargs)

    return inner1


def wrapper2(func):
    print("........wrapper2---------")

    def inner2(*args, **kwargs):
        print("........inner2---------")
        func(*args, **kwargs)

    return inner2


def wrapper3(func):
    print("........wrapper3---------")

    def inner3(*args, **kwargs):
        print("........inner3---------")
        func(*args, **kwargs)
    return inner3


@wrapper1
@wrapper2
@wrapper3
def func():
    pass

func()

 执行结果: 

原文地址:https://www.cnblogs.com/linbo3168/p/15205464.html