Python内置异常类型全面汇总


Posted in Python onMay 28, 2020

内置异常基类

在 Python 中,所有异常必须为一个派生自 BaseException 的类的实例。 通过子类化创建的两个不相关异常类永远是不等效的,既使它们具有相同的名称。

下列异常主要被用作其他异常的基类。

BaseException: 所有异常的基类

Exception(重点掌握)

所有内置的非系统退出类异常都派生自此类。 所有用户自定义异常也应当没打算自此类。

ArithmeticError

此基类用于派生针对各种算术类错误而引发的内置异常: OverflowError, ZeroDivisionError, FloatingPointError。

BufferError

当与 缓冲区 相关的操作无法执行时将被引发。

LookupError

此基类用于派生当映射或序列所使用的键或索引无效时引发的异常: IndexError, KeyError

内置异常的层次结构

BaseException       所有异常的基类     
 +-- SystemExit       解释器请求退出
 +-- KeyboardInterrupt     用户中断执行(通常是输入^C)
 +-- GeneratorExit      生成器(generator)发生异常来通知退出
 +-- Exception        常规错误的基类
   +-- StopIteration       迭代器没有更多值 
   +-- StopAsyncIteration       必须通过异步迭代器对象的__anext__()方法引发以停止迭代
   +-- ArithmeticError         所有数值计算错误的基类
   |  +-- FloatingPointError       浮点计算错误
   |  +-- OverflowError         数值运算超出最大限制
   |  +-- ZeroDivisionError       除(或取模)零 (所有数据类型
   +-- AssertionError         断言语句失败
   +-- AttributeError         对象没有这个属性
   +-- BufferError          与缓冲区相关的操作时引发
   +-- EOFError            没有内建输入,到达EOF 标记
   +-- ImportError           导入失败
   |  +-- ModuleNotFoundError    找不到模块
   +-- LookupError           无效数据查询的基类
   |  +-- IndexError           序列中没有此索引(index)
   |  +-- KeyError            映射中没有这个键
   +-- MemoryError           内存溢出错误
   +-- NameError            未声明、初始化对象
   |  +-- UnboundLocalError       访问未初始化的本地变量
   +-- OSError             操作系统错误,
   |  +-- BlockingIOError        操作将阻塞对象设置为非阻塞操作
   |  +-- ChildProcessError       子进程上的操作失败
   |  +-- ConnectionError        与连接相关的异常的基类
   |  |  +-- BrokenPipeError       在已关闭写入的套接字上写入
   |  |  +-- ConnectionAbortedError   连接尝试被对等方中止
   |  |  +-- ConnectionRefusedError   连接尝试被对等方拒绝
   |  |  +-- ConnectionResetError    连接由对等方重置
   |  +-- FileExistsError        创建已存在的文件或目录
   |  +-- FileNotFoundError       请求不存在的文件或目录
   |  +-- InterruptedError       系统调用被输入信号中断
   |  +-- IsADirectoryError       在目录上请求文件操作
   |  +-- NotADirectoryError      在不是目录的事物上请求目录操作
   |  +-- PermissionError       在没有访问权限的情况下运行操作
   |  +-- ProcessLookupError      进程不存在
   |  +-- TimeoutError         系统函数在系统级别超时
   +-- ReferenceError        弱引用试图访问已经垃圾回收了的对象
   +-- RuntimeError         一般的运行时错误
   |  +-- NotImplementedError   尚未实现的方法
   |  +-- RecursionError      解释器检测到超出最大递归深度
   +-- SyntaxError          Python 语法错误
   |  +-- IndentationError     缩进错误
   |     +-- TabError     Tab 和空格混用
   +-- SystemError       一般的解释器系统错误
   +-- TypeError        对类型无效的操作
   +-- ValueError       传入无效的参数
   |  +-- UnicodeError       Unicode 相关的错误
   |     +-- UnicodeDecodeError   Unicode 解码时的错误
   |     +-- UnicodeEncodeError   Unicode 编码时错误
   |     +-- UnicodeTranslateError Unicode 转换时错误
   +-- Warning            警告的基类
      +-- DeprecationWarning     关于被弃用的特征的警告
      +-- PendingDeprecationWarning  关于构造将来语义会有改变的警告
      +-- RuntimeWarning      可疑的运行行为的警告
      +-- SyntaxWarning      可疑的语法的警告
      +-- UserWarning       用户代码生成的警告
      +-- FutureWarning      有关已弃用功能的警告的基类
      +-- ImportWarning      模块导入时可能出错的警告的基类
      +-- UnicodeWarning      与Unicode相关的警告的基类
      +-- BytesWarning       bytes和bytearray相关的警告的基类
      +-- ResourceWarning      与资源使用相关的警告的基类

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
下载糗事百科的内容_python版
Dec 07 Python
Python中replace方法实例分析
Aug 20 Python
Python实现简单的文件传输与MySQL备份的脚本分享
Jan 03 Python
Linux 下 Python 实现按任意键退出的实现方法
Sep 25 Python
详解使用python crontab设置linux定时任务
Dec 08 Python
python绘制铅球的运行轨迹代码分享
Nov 14 Python
详解python爬虫系列之初识爬虫
Apr 06 Python
Python数据类型之Number数字操作实例详解
May 08 Python
Python绘制热力图示例
Sep 27 Python
Python3加密解密库Crypto的RSA加解密和签名/验签实现方法实例
Feb 11 Python
Django ORM 查询表中某列字段值的方法
Apr 30 Python
python Scrapy爬虫框架的使用
Jan 21 Python
python不到50行代码完成了多张excel合并的实现示例
May 28 #Python
python使用openpyxl操作excel的方法步骤
May 28 #Python
基于python实现破解滑动验证码过程解析
May 28 #Python
PythonPC客户端自动化实现原理(pywinauto)
May 28 #Python
基于Pyinstaller打包Python程序并压缩文件大小
May 28 #Python
Python selenium 加载并保存QQ群成员,去除其群主、管理员信息的示例代码
May 28 #Python
Python爬虫requests库多种用法实例
May 28 #Python
You might like
linux系统上支持php的 iconv()函数的方法
2011/10/01 PHP
PHPThumb图片处理实例
2014/05/03 PHP
PHP中数据库单例模式的实现代码分享
2014/08/21 PHP
php eval函数一句话木马代码
2015/05/21 PHP
PHP简单生成缩略图相册的方法
2015/07/29 PHP
php实现简单的守护进程创建、开启与关闭操作
2019/08/13 PHP
js函数获取html中className所在的内容并去除标签
2013/09/08 Javascript
jquery中交替点击事件toggle方法的使用示例
2013/12/08 Javascript
Jquery中ajax方法data参数的用法小结
2014/02/12 Javascript
js HTML5多图片上传及预览实例解析(不含前端的文件分割)
2016/08/26 Javascript
正则中的回溯定义与用法分析【JS与java实现】
2016/12/27 Javascript
详解js的异步编程技术的方法
2017/02/09 Javascript
Vue异步组件处理路由组件加载状态的解决方案
2018/09/07 Javascript
Vue slot用法(小结)
2018/10/22 Javascript
详解vue-property-decorator使用手册
2019/07/29 Javascript
javascript 构建模块化开发过程解析
2019/09/11 Javascript
layui+jquery支持IE8的表格分页方法
2019/09/28 jQuery
js操作两个json数组合并、去重,以及删除某一项元素
2020/09/22 Javascript
win7上python2.7连接mysql数据库的方法
2017/01/14 Python
Python3导入自定义模块的三种方法详解
2018/04/13 Python
解决seaborn在pycharm中绘图不出图的问题
2018/05/24 Python
解决Pycharm调用Turtle时 窗口一闪而过的问题
2019/02/16 Python
简单了解python中对象的取反运算符
2019/07/01 Python
Python高级编程之继承问题详解(super与mro)
2019/11/19 Python
Django-rest-framework中过滤器的定制实例
2020/04/01 Python
基于Python的OCR实现示例
2020/04/03 Python
Pandas直接读取sql脚本的方法
2021/01/21 Python
一款纯css3实现的非常实用的鼠标悬停特效演示
2014/11/05 HTML / CSS
迪卡侬荷兰官网:Decathlon荷兰
2017/10/29 全球购物
《小壁虎借尾巴》教学反思
2014/02/16 职场文书
项目建议书怎么写
2014/05/15 职场文书
2014年少先队工作总结
2014/12/03 职场文书
2015年司机年终工作总结
2015/05/14 职场文书
如何解决php-fpm启动不了问题
2021/11/17 PHP
Dubbo+zookeeper搭配分布式服务的过程详解
2022/04/03 Java/Android
vue组件vue-esign实现电子签名
2022/04/21 Vue.js