1. 异常
•异常的简介:
•程序在运行过程中可能会出现一些错误。比如: 使用了不存在的索引,两个不同类型的数据相加…这些错误我们称之为异常
# 异常
print(10/0)#异常类型:ZeroDivisionError: division by zero
# 不执行
print('Hello World')
•处理异常 程序运行时出现异常,目的并不是让我们的程序直接终止!Python是希望在出现异常时,我们可以编写代码来对异常进行处理
# 上述例子异常处理
try:
print(10/0)
except:
print('出现错误')
# 执行
print('Hello World')
#输出结果:出现错误
# Hello World
•其它语句:
•else 当没有出现错误时执行的语句
•finally 不管是否出现错误 该语句都执行
没有出现异常
# 异常处理
try:
print(10/2)#没有错误 执行
except:
print('出现错误')#没有错误不执行
else:
print('没有出现错误')#没有错误执行
finally:
print('该语句必须执行')#是否有错误都执行
# 执行
print('Hello World')#执行语句
#输出结果:5.0
# 没有出现错误
# 该语句必须执行
# Hello World
出现异常
# 异常处理
try:
print(10/0)#出现异常
except:
print('出现错误')#出现异常,执行该语句
else:
print('没有出现错误')#出现异常,不执行该语句
finally:
print('该语句必须执行')#是否出现异常都执行该语句
# 执行
print('Hello World')#异常处理完成,执行该语句
#输出结果:出现错误
# 该语句必须执行
# Hello World
•except语句的其他应用:
•如果except后面不跟任何的内容,则此时它会捕获所有的异常内容
•如果except后面跟着一个异常类型,则它只会捕获该类型的异常
•except Exception as e:可将异常类型输出
主动抛出异常
try:
print(10/0)
except ZeroDivisionError:
print('除数不能为0')
获取异常类型
try:
print(10 / 0)
except Exception as e:
print('出现的异常为', e, '属于', type(e))#出现异常并获取异常类型
# 输出结果:出现的异常为 division by zero 属于 <class 'ZeroDivisionError'>
finally: # 是否出现异常都执行该语句
print('成功获取异常类型')# 输出结果:成功获取异常类型