2018-09-13 exception handling

(1)异常:

是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。

一般情况下,在Python无法正常处理程序时就会发生一个异常。

异常是Python对象,表示一个错误。

当Python脚本发生异常时我们需要捕获处理它,否则程序会终止执行

例如:

用户输入不合规定的数据或者需要打开的文件不存在,这些情况被称作“异常”

程序需要能处理可能发生的异常,避免程序因此中断,即希望程序执行过程中即使出现异常,程序也能正常的执行下去,这种情况下就需要用到python中的异常

(2)格式

try:

        <语句>        #运行别的代码

except <异常名字name>:

        <语句>        #如果在try部份引发了'name'异常

将可能引发异常的语句放到try块中执行,当发生异常时,跳过try块中剩余的语句,直接跳转至except中的语句来处理异常

2018-09-13 exception handling_第1张图片

Except:语句也可以专门处理指定的异常,即在except语句后跟异常名称,如果不指定异常名称则表示处理所有异常 

异常类型(定义异常类型后,只会检测这种类型的错误,其他的错误并不会处理)
Exception   所有异常的基类

 AttributeError   特性引用或赋值失败时引发

 IOError  试图打开不存在文件时引发

 IndexError 在使用序列中不存在的索引时引发

KeyError  在使用映射中不存在的键时引发

NameError 在找不到名字时引发

SyntaxError  在代码为错误形式时引发

TypeError  在内建操作或者函数应用于错误类型的对象时引发

ValueError 在内建操作或者函数应用于正确类型的对象,但是该对象使用不合适的值时引发

 ZeroDivisionError  在除法或者模除操作的第二个参数为0时引发

2018-09-13 exception handling_第2张图片

如果不同类型的异常,程序的处理方式不相同,还可以使用多个except语句

2018-09-13 exception handling_第3张图片

try .........except...............  else

有些情况中,当没有异常发生时执行一段代码是很有用的

在python中使用try…except语句时,可以结合else来实现这种没有发生的场景

2018-09-13 exception handling_第4张图片

try…finally

finally语句表示最后,即无论是否发生异常都需要执行的语句块

可以和try…except…else一起使用

2018-09-13 exception handling_第5张图片

你可能感兴趣的:(2018-09-13 exception handling)