错误:在运行前发现
异常:在运行时报出
常见的异常类型
NameError | 尝试访问一个未命名的变量 |
ZeroDivisionError | 除数为0 |
IndexError | 索引超出范围 |
KeyError | 请求一个不存在的字典变量 |
IOError | 输入输出错误 |
AttributeError | 访问未知对象属性 |
ValueError | 数值错误 |
TypeError | 类型错误 |
AssertionError | 断言错误 |
IndentationError | 格式错误(可能没有缩进) |
“Exception”已经包含了大部分的错误类型,是其他错误的父类,可以通过它来捕捉常见的异常。
异常捕获:
为什么要进行异常捕获处理:
(1)try....except
try:
要执行的语句
except:
如果异常类型与异常关键字相匹配,执行下面的语句
异常处理语句
try:
1 / 0
except ZeroDivisionError:
print("ZeroDivisionError")
(2))try....多个except语句
try:
data = [1, 2, 3]
data[5]
except ZeroDivisionError:
print("ZeroDivisionError")
except IndexError:
print("IndexError")
except IndexError:
print("IndexError")
(3)try...except ..... as e
try:
要执行的语句
except 错误类型 as e:
异常处理语句
as + 关键字 以用来对错误数据的处理
try:
data = [1, 2, 3]
data[5]
except IndexError as e:
print(e, data[1])
list index out of range 2
(4)try...except...finally
无论是否捕捉到异常都会执行最后的命令,达到收尾的作用
try:
data = [1, 2, 3]
data[5]
except IndexError as e:
print(e, data[1])
finally:
print("错误处理完毕")
list index out of range 2
错误处理完毕
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。