异常处理

异常处理

try:
    <语句>   #运行的代码
except <异常类>:
    <语句>  # 捕获某种类型的异常
except <异常类> as <变量名>:
    <语句>  # 捕获某周类型的异常并获得其对象
else:
    <语句>  # 如果没有发异常发生
finally:
	<语句>  # 退出try时总会执行

try工作原理

  1. 如果try中语句中执行时发生异常,搜索except子句,并执行第一个匹配该异常的except子句
  2. 如果try中语句执行时发生异常,却内有匹配的except子句,异常将被递交给外层的try,如果外层不处理这个异常,异常将继续向外曾传递。如果都不处理这个异常,则会传递到最外层,如果还内有处理,就终止异常所在的线程。
  3. 如果在try执行时没有发生异常,将执行else子句中的语句。
  4. 无论try中是否发生异常,finally子句最终都会执行。
原文地址:https://www.cnblogs.com/agsol/p/11586665.html