首页 > 代码库 > 装饰器

装饰器

装饰器用来装饰函数,可以在这个函数执行前和执行后做一些操作。

 

def outer(func):
    # func = 原来的f1函数
    def inner():
        print(hello)
        r = func()
        print(end)
        return r
    return inner

@outer
def f1():
    print(F1)
    return F1 return

# 1、执行outer函数,并且将其下面的函数名,当作参数
# 2、将outer的返回值,重新赋值给f1 = outer的返回值
# 加@outer可以理解为,执行f1=outer(f1)
r = f1()    # 新f1函数 = inner
print(r)

 

以上代码执行结果:

hello
F1
end
F1 return

 

装饰器