Discuss / Python / 为什么不直接卸载log函数中? 再嵌套一层是什么意思?求指点

为什么不直接卸载log函数中? 再嵌套一层是什么意思?求指点

Topic source

大冰小松

#1 Created at ... [Delete] [Delete and Lock User]

def log(func): def wrapper(args, **kw): print('call %s():', func.name) return func(args, **kw) return wrapper

def log2(func): print('call %s():', func.name) return func

大冰小松

#2 Created at ... [Delete] [Delete and Lock User]

为什么不用下面的呢?

def log(func):
    def wrapper(args, **kw):
        print('call %s():', func.__name__)
        return func(args, **kw)
    return wrapper

def log2(func):
    print('call %s():', func.__name__)
    return func

  • 1

Reply