51 - 裝飾器的作用

1. 請簡要的描述裝飾器的作用

  • 裝飾器是一個函數
  • 主要用於爲函數添加額外功能
    • 插入日誌
    • 性能測試

2. 如何自定義裝飾器

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)
sum = 6
name add

52 - 判斷調用的是函數還是方法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章