我想引发错误,然后返回一个值。
print 'Max Iter Reached'
return x
让两条线都有效。
现在我发现这个问题很愚蠢,我决定打印一条错误信息。
{{1}}
答案 0 :(得分:6)
这是不可能的。函数可以 返回值或引发异常。它不能两者都做。调用return
或raise
将完全终止该功能。
您可以在异常消息中编码返回值,如下所示:
raise SomeException('my value is 5')
或者您可以返回异常和值的元组:
return (SomeException('hello'), 5)
答案 1 :(得分:2)
它没有意义但是如果你需要它。
def your_method(self):
......
try:
raise ValueError('Max Iter Reached')
except ValueError as e:
return value