如果被调用的方法引发异常,我想继续循环。这是一个简单的示例,我的实际代码非常复杂,并且不想在所有调用的方法中进行错误处理。
list_of_lists = [['hammerhead', 'great white', 'dogfish'],[0, 1, 2],[9.9, 8.8, 7.7]]
def parse(item):
item / 1
for list in list_of_lists:
for item in list:
try:
parse(item)
except ValueError:
break
一旦命中了parse方法,就会引发异常。我希望有一种方法,它可以继续进行下去。 (外循环)
最佳答案
在这种情况下,您尝试将一个字符串除以一个引发TypeError
而不是ValueError
的整数,这就是为什么您的代码引发错误的原因。
如果要捕获所有可能的错误,可以执行以下操作:
try:
parse(item)
except:
break
但我不建议这样做,因为在您的情况下,似乎有很多复杂的函数会引发许多不同的错误,最好不要捕获所有错误,因为您可能会错过一个重要的错误。
我建议您只运行几次代码以找出所有可能的错误,并对每个错误都有一个特定的陷阱,以确保不会出现您没有预料到的无关错误
关于python - 调用方法的Python错误处理,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51086773/