Python装饰器

在python里面时常看到稍微高级点的写法就加了个@
这是装饰器,之前一直没有使用过,今天好好弄懂下。

import functools

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

这里相当于定义了一个log为decorator,功能是在执行函数前输出函数名。

可以通过在需要装饰的函数前加

@log
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。