Discuss / Python / 最后一个

最后一个

Topic source
def log(text=''):

    if isinstance(text, str):        
        def decorator(func):
            @functools.wraps(func)
            def wrapper(*args, **kw):
                print('%s %s():' % (text, func.__name__))
                return func(*args, **kw)
            return wrapper
        return decorator

    @functools.wraps(text)
    def wrapper(*args, **kw):
        print('no() call %s():' % text.__name__)
        return text(*args, **kw)
    return wrapper

@log
def f():
    print('@log')

@log()
def d():
    print('@log()')

@log('message')
def g():
    print('@log(\'message\')')
    

  • 1

Reply