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 Django模板的使用方法(图文)
Nov 04 Python
Django中模型Model添加JSON类型字段的方法
Jun 17 Python
python使用pyqt写带界面工具的示例代码
Oct 23 Python
解决PyCharm同目录下导入模块会报错的问题
Oct 13 Python
python实现文本界面网络聊天室
Dec 12 Python
python3用PIL把图片转换为RGB图片的实例
Jul 04 Python
Python有参函数使用代码实例
Jan 06 Python
Python在终端通过pip安装好包以后在Pycharm中依然无法使用的问题(三种解决方案)
Mar 10 Python
pycharm2020.2 配置使用的方法详解
Sep 16 Python
浅谈python 类方法/静态方法
Sep 18 Python
matplotlib常见函数之plt.rcParams、matshow的使用(坐标轴设置)
Jan 05 Python
python-jwt用户认证食用教学的实现方法
Jan 19 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
使用PHP求两个文件的相对路径
2013/06/20 PHP
PHP 下载文件时如何自动添加bom头及解释BOM头和去掉bom头的方法
2016/01/04 PHP
PHP将页面中点击数量高的链接进行高亮显示的方法
2016/05/30 PHP
PHP表单数据写入MySQL数据库的代码
2016/05/31 PHP
PHP页面跳转操作实例分析(header方法)
2016/09/28 PHP
PHP文件上传、客户端和服务器端加限制、抓取错误信息、完整步骤解析
2017/01/12 PHP
两种WEB下的模态对话框 (asp.net或js的分别实现)
2009/12/02 Javascript
js 文件引入实现代码
2010/04/23 Javascript
jQuery中的jQuery()方法用法分析
2014/12/27 Javascript
jquery实现手机号码选号的方法
2015/07/31 Javascript
js实现Select列表内容自动滚动效果代码
2015/08/20 Javascript
在WordPress中加入Google搜索功能的简单步骤讲解
2016/01/04 Javascript
JavaScript实战之菜单特效
2016/08/16 Javascript
详解使用Vue.Js结合Jquery Ajax加载数据的两种方式
2017/01/10 Javascript
Vue.js实现多条件筛选、搜索、排序及分页的表格功能
2020/11/24 Javascript
基于JS脚本语言的基础语法详解
2017/07/22 Javascript
使用angular-cli webpack创建多个包的方法
2018/10/16 Javascript
layui实现左侧菜单点击右侧内容区显示
2019/07/26 Javascript
Vue学习笔记之计算属性与侦听器用法
2019/12/07 Javascript
vue.js watch经常失效的场景与解决方案
2021/01/07 Vue.js
[06:07]DOTA2-DPC中国联赛 正赛 Ehome vs VG 选手采访
2021/03/11 DOTA
python模拟登录百度贴吧(百度贴吧登录)实例
2013/12/18 Python
win7 下搭建sublime的python开发环境的配置方法
2014/06/18 Python
Python3.6笔记之将程序运行结果输出到文件的方法
2018/04/22 Python
TensorFlow的reshape操作 tf.reshape的实现
2020/04/19 Python
基于Keras的格式化输出Loss实现方式
2020/06/17 Python
Python3读写ini配置文件的示例
2020/11/06 Python
CSS3教程:新增加的结构伪类
2009/04/02 HTML / CSS
Gap中国官网:美式休闲风服饰
2017/02/05 全球购物
.net笔试题
2014/03/03 面试题
abstract是什么意思
2012/02/12 面试题
新年晚会主持词
2014/03/24 职场文书
公务员四风问题对照检查材料整改措施
2014/09/26 职场文书
给老师的一封感谢信
2015/01/20 职场文书
证券公司客户经理岗位职责
2015/04/09 职场文书
爱岗敬业事迹材料
2019/06/20 职场文书