在Python中,是否可以为一个try语句有多个except语句?例如:

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”关键字用于将错误分配给一个变量,以便稍后在代码中更彻底地调查该错误。还要注意,在python3中需要三重异常情况的括号。在一行中捕获多个异常(块除外)

其他回答

是的,这是可能的。

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”关键字用于将错误分配给一个变量,以便稍后在代码中更彻底地调查该错误。还要注意,在python3中需要三重异常情况的括号。在一行中捕获多个异常(块除外)