执行简单的装饰器代码时出现以下错误
“ decorator_func()缺少1个必需的位置参数:'original_func'”
感谢有人指出问题,谢谢。
代码如下:
def decorator_func(original_func):
def wrapper_func(*args, **kwargs):
return original_func(*args, **kwargs)
return wrapper_func()
@decorator_func() #also tried without calling i.e. @decorater_func
def displayInfo_func(name, age):
print('Display Info func ran with arguments ({}, {})'.format(name))
displayInfo_func
谢谢。
答案 0 :(得分:1)
问题在于返回包装函数时,您正在调用它,而且也没有任何参数。
def decorator_func(original_func):
def wrapper_func(*args, **kwargs):
return original_func(*args, **kwargs)
return wrapper_func #instead of wrapper_func()
@decorator_func() #also tried without calling i.e. @decorater_func
def displayInfo_func(name, age):
print('Display Info func ran with arguments ({}, {})'.format(name))