Python:一种尝试多种除外
问题描述:
在 Python 中,一个 try
语句是否可以有多个 except
语句?如:
In Python, is it possible to have multiple except
statements for one try
statement? Such as :
try:
#something1
#something2
except ExceptionType1:
#return xyz
except ExceptionType2:
#return abc
答
是的,这是可能的.
try:
...
except FirstException:
handle_first_one()
except SecondException:
handle_second_one()
except (ThirdException, FourthException, FifthException) as e:
handle_either_of_3rd_4th_or_5th()
except Exception:
handle_all_other_exceptions()
参见:http://docs.python.org/tutorial/errors.html
as"关键字用于将错误分配给变量,以便稍后可以在代码中更彻底地调查错误.另请注意,python 3 中需要三重异常情况的括号.此页面有更多信息:在一行中捕获多个异常(块除外)
The "as" keyword is used to assign the error to a variable so that the error can be investigated more thoroughly later on in the code. Also note that the parentheses for the triple exception case are needed in python 3. This page has more info: Catch multiple exceptions in one line (except block)