如何在 list comprehension 中捕获 python 异常

如何在 list comprehension 中捕获 python 异常

Python 中没有内置函数可以让你处理或忽略一个异常,所以不可能在一个列表理解中处理所有的异常,因为一个列表理解包含一个或多个表达式;只有语句可以捕获/忽略/处理异常。

将容易产生异常的子表达式的评估委托给一个函数,是一个可行的解决方法;其他的是对可能引发异常的值进行检查。

我们处理这个问题的方法是使用下面的代码。

例子

foo = (5,7,1,0,9)
def bar(self):
try:
return [1/i for i in foo]
except ZeroDivisionError as e:
print e
bar(foo)

输出

integer division or modulo by zero
Process finished with exit code 0

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

Python 实例