一、什么是异常?
程序运行过程中会出现一些意外,这些意外Python无法自己处理,所以“举手”抛出异常,让程序员自己处理,程序员如果不处理,程序就会停止继续执行,这些意外就叫做异常。
二、异常的例子
代码中出现数字除以零,抛出ZerodivisionError的异常
将字符串“aa”转换成int("aa"),抛出ValueError的异常
列表list只有3个元素,却出现了list[4]来访问元素,抛出IndexError异常
一个字典dict,使用不存在的key来访问d[key],就是抛出KeyError异常
打开一个不存在的文件open("text.txt),抛出FileNotFoundError异常
三、异常的捕获和处理
try:
代码逻辑
代码逻辑
except [KeyError as e]:
print("KeyError的代码“,e)
except [exception as e]:
#Exception可以捕获所有异常
print("KeyError的代码”,e)
finally:
#一般用于资源的清理,比如文件的关闭
print("一定执行的代码")
四、自己抛出异常
即抛出一个Exception的对象
raise Exception("异常信息“)
五、异常的代码演示:
<pre style="background-color:#ffffff;color:#000000;font-family:'宋体';font-size:9.0pt;">""" 这是一个异常的演示,把可能出现异常的代码放入try模块中,一旦出现异常,就和 except中的条件进行比对,如果满足,就执行相应的except中的代码。不管异常是否发生,finally中的 代码都会被执行 """ try:
print("hello 01")
print(10/0)#如果这个异常不存在,finally里的语句还是会被执行
print("hello 02")
except ValueError as e:
print("ValueError",e)
except ZeroDivisionError as e:
print("ZerodivisionError",e)
finally:
print("finally")
print("hello 03")</pre>