22.异常处理

程序在执行过程中,不可避免的会出现错误,错误分为两种,语法错误和逻辑错误

语法错误可以避免,但是逻辑错误有时是不可避免的,可以通过捕捉异常来继续完成代码编写

异常捕捉格式:

格式一:

try:
  代码1
except 错误名:
  代码2

对代码1进行错误监测,如果代码1没有出错,就不执行代码2;如果代码1抛出与错误名相同的错误,就执行代码2,错误名不相同也不执行代码2。

该语句只能处理对应的错误

 

格式二:

try:
  代码1
except 错误名1:
  代码2
except 错误名2:
  代码3
except 错误名3
  代码4
......

程序报错时,从上到下依次匹配错误,如果报错匹配成功就执行相应的代码。不成功就程序报错

except支持多分枝的语句,可以匹配多种错误

 

格式三:匹配错误万能语句

try:
  代码1
except Exception:
  代码2

无论代码一发生什么错误,只要有错,代码都都会执行

可以和上面的语句配合使用如下:

try:
    代码1
except 错误名1:  #分支错误写在万能异常上方,找不到该错误后再匹配万能异常
    代码2
except Exception:  #使用万能异常语句时,做好写成except Exception as f  ,在代码3中加入print(f),可以查看到程序是哪里报错
    代码3
else:
    代码4      #try中代码1完全执行后,即没有异常,就会执行else中代码4的内容
finally:
    代码5     #无论有错没错,都会执行的代码,finall和return相遇,依然会执行,通常会被使用再函数中用来异常处理,不管是否异常去做一些收尾工作

 

posted @ 2020-10-18 21:48  maday  阅读(69)  评论(0)    收藏  举报