欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

闭包 和 装饰器

程序员文章站 2022-06-01 20:20:34
...
def deco(func):
    def inner():
        print("---")
        func()
    return inner

@deco
def show():
    print("AAA")

show()-------------------------
实现原理 show = deco(show)  show() 
def deco(func):
    def inner(num1, num2):   #不要忘了inner传进参数
        print("计算结果如下:")
        func(num1, num2)
    return inner

############## A ##################
@deco
def sum(num1, num2):
    result = num1 + num2
    print(result)

sum = deco(sum)

sum(1, 2)

############### B #################

def sum(num1, num2):
    result = num1 + num2
    print(result)

sum = demo(sum)

sum(1, 2)

A和B的效果是一样的

相关标签: 装饰器