此方法主要目的就是为了给被包装函数添加额外参数:
实例如下:
from functools import wraps
def option_debug(func):
@wraps(func)
def wrapper(*args,debug=False,**kwargs):
if debug:
print('Calling:',func.__name__)
return func(*args,**kwargs)
return wrapper
@option_debug
def add(x,y,z):
return x+y+z
print(add(1,2,3,debug=True))
#理解装饰器,实质上就只要理解了下述代码,就不难了:
f = option_debug(add)(1,2,