-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
Description
装饰器是一个函数
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(False)
def add(a,b,c):
print('sum','=',a + b + c)
add(1,2,3) ## name add
装饰器本身就是一个函数,主要用于为函数添加额外功能。如插入日志、性能测试等。