多个装饰器装饰一个函数

多个装饰器装饰一个函数

离函数最近的装饰器先装饰,然后外面的装饰器再进行装饰,由内到外的装饰过程

# 定义装饰器1
def check1(fn1):
    def inner1():
        print('登录验证1')
        fn1()
    return inner1

# 定义装饰器2
def check2(fn2):
    def inner2():
        print('登录验证2')
        fn2()
    return inner2

# 被装饰的函数
@check1
@check2 # 谁离被装饰的函数近,谁就先装饰
def comment():
    print('发表评论....')

comment()