前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >51 - 装饰器的作用

51 - 装饰器的作用

原创
作者头像
ruochen
修改2021-05-31 10:30:10
2280
修改2021-05-31 10:30:10
举报
文章被收录于专栏:若尘的技术专栏

1. 请简要的描述装饰器的作用

  • 装饰器是一个函数
  • 主要用于为函数添加额外功能
    • 插入日志
    • 性能测试

2. 如何自定义装饰器

代码语言:txt
复制
from functools import wraps

def log(flag):
    def decorate(func):
        @wraps(func)
        def _wrap(*args, **kwargs):
            try:
                if flag:
                    func(*args, **kwargs)
                print('name', func.__name__)
            except Exception as e:
                print(e.args)
        return _wrap
    return decorate

@log(True)
def add(a, b, c):
    print('sum =', a + b + c)
    
add(1, 2, 3)
代码语言:txt
复制
sum = 6
代码语言:txt
复制
name add

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 请简要的描述装饰器的作用
  • 2. 如何自定义装饰器
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档