异常处理
python的异常处理机制让我们可以更优雅的应对错误,甚至将计就计,比如目标文件未找到的时候输出特定信息。
python的异常处理模块格式:
try:
...
except <ExceptionType>:
...
在try部分的代码段,如果没有出现错误,则except部分将被忽略,如果出现异常类型是except,则代码将被执行,
一个try可以对应多个except,也可以用else和/或者finally来控制程序结构。
try:
# 程序主干
except <ExceptionType1>:
# 异常处理1
except <ExceptionTypeN>:
# 异常处理2
except:
# 异常处理3
else:
# 其他情况
finally:
# 最终情况
except和elif有点类似,当异常发生时,首先尝试匹配错误类型,如果找到就执行相应代码段,最后一个except的exceptiontype
将被忽略,如果找不到匹配的错误类型,就跳转到最后一个except,无论类型如何。
else中的代码段,只有在未发生异常才会执行
finally的代码段无论是否发生异常,都会执行
触发异常
通过raise关键字,可以用自己的方法触发异常:
raise ExceptionClass("自定义参数")