我正在学习装饰器,在这里我试图将下面的内容更改为装饰器模式。
def invert(x):
return 1/x
print invert(5)
可以使用装饰器进行更改。
def safe(fun, *args):
if args[0]!=0:
return fun(*args)
else:
"Division by 0"
def invert(x):
return 1/x
print safe(invert, 5)
使用@wapper 语法,
def safe(fun, *args):
if args[0]!=0:
return fun(*args)
else:
"Division by 0"
@safe
def invert(x):
return 1/x
print invert(5)
上面的代码给出了错误IndexError: tuple index out of range
。我试图了解是什么造成了错误以及如何纠正它。