Python内置异常类型全面汇总
内置异常基类
在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解释器检测到超出最大递归深度 +--SyntaxErrorPython语法错误 |+--IndentationError缩进错误 |+--TabErrorTab和空格混用 +--SystemError一般的解释器系统错误 +--TypeError对类型无效的操作 +--ValueError传入无效的参数 |+--UnicodeErrorUnicode相关的错误 |+--UnicodeDecodeErrorUnicode解码时的错误 |+--UnicodeEncodeErrorUnicode编码时错误 |+--UnicodeTranslateErrorUnicode转换时错误 +--Warning警告的基类 +--DeprecationWarning关于被弃用的特征的警告 +--PendingDeprecationWarning关于构造将来语义会有改变的警告 +--RuntimeWarning可疑的运行行为的警告 +--SyntaxWarning可疑的语法的警告 +--UserWarning用户代码生成的警告 +--FutureWarning有关已弃用功能的警告的基类 +--ImportWarning模块导入时可能出错的警告的基类 +--UnicodeWarning与Unicode相关的警告的基类 +--BytesWarningbytes和bytearray相关的警告的基类 +--ResourceWarning与资源使用相关的警告的基类
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。