异常
简述
异常可以看作是打破程序正常执行流程的错误事件。
异常的使用场景
(1)网络请求(超时,连接错误等)
(2)资源访问(权限问题,资源不存在)
(3)代码逻辑(索引越界,KeyError)
异常处理
try: #可能会抛出异常的代码 except (Exception1, Exception2) as e: #可以捕获多个异常并处理 #处理异常的代码 else: #异常没有发生时代码 finally: #无论异常有没有发生都会执行的代码 #一般处理资源的关闭和释放
自定义异常
继承Exception实现自定义异常
给异常加一些附加信息
处理一些业务相关的特定异常(raise MyException)
class MyExcepiton(Exception): """docstring for MyExcepiton""" pass try: raise MyExcepiton('my exception') except MyExcepiton as e: print(e)
注意:如果捕获一个父类的异常,那么它的所有子类异常均在被捕获的范围内