如果我不发送两个参数,是否有可能捕获异常“缺少1个必需的位置参数”?如果无法更改断言函数,该如何解决。
def sum (n,m):
return n+m
if __name__ == '__main__':
assert sum(16,15) == 31, "EXAMPLE"
assert sum([16,16]) == 32, "result - missing 1 required positional"
答案 0 :(得分:0)
我找到了解决方案。我只是将第二个参数设为可选。在这种情况下,我不必修改我的主要功能。
def sum (n,m=0):
if m!=0:
return n + m
elif type(n)==list:
return n[0]+n[1]
if __name__=='__main__':
assert sum(16, 15) == 31, "EXAMPLE"
assert sum([16, 16]) == 32, "result - missing 1 required positional"