python标准异常详解

python struggling 1161次浏览 0个评论
文章目录

158PICT58PICEQt

本文包含 python 2 及 python 3 中所有的异常方法!

Python 2 标准异常

via : https://docs.python.org/2/library/exceptions.html#bltin-exceptions

<code>
 BaseException        所有异常的基类
 +-- SystemExit                解释器请求退出
 +-- KeyboardInterrupt         用户中断执行(通常是输入^C)
 +-- GeneratorExit             生成器调用close()方法时触发的
 +-- Exception                 常规错误的基类,异常都是从基类Exception继承的。
      +-- StopIteration                迭代器没有更多的值
      +-- StandardError                所有的内建标准异常的基类
      |    +-- BufferError                      缓冲区操作不能执行
      |    +-- ArithmeticError                  所有数值计算错误的基类
      |    |    +-- FloatingPointError                  浮点计算错误
      |    |    +-- OverflowError                       数值运算超出最大限制
      |    |    +-- ZeroDivisionError                   除(或取模)零 (所有数据类型)
      |    +-- AssertionError                   断言语句失败
      |    +-- AttributeError                   访问未知对象属性
      |    +-- EnvironmentError                 操作系统错误的基类
      |    |    +-- IOError                              输入输出错误
      |    |    +-- OSError                              操作系统错误
      |    |         +-- WindowsError (Windows)                  系统调用失败
      |    |         +-- VMSError (VMS)                          系统调用失败
      |    +-- EOFError                         没有内建输入,到达EOF 标记
      |    +-- ImportError                      导入模块/对象失败
      |    +-- LookupError                      无效数据查询的基类,键、值不存在引发的异常
      |    |    +-- IndexError                           索引超出范围
      |    |    +-- KeyError                             字典关键字不存在
      |    +-- MemoryError                      内存溢出错误(对于Python 解释器不是致命的)
      |    +-- NameError                        未声明/初始化对象 (没有属性)
      |    |    +-- UnboundLocalError                    访问未初始化的本地变量
      |    +-- ReferenceError                   弱引用(Weak reference)试图访问已经垃圾回收了的对象
      |    +-- RuntimeError                     一般的运行时错误
      |    |    +-- NotImplementedError                  尚未实现的方法
      |    +-- SyntaxError                      语法错误
      |    |    +-- IndentationError                    缩进错误
      |    |         +-- TabError                                Tab和空格混用
      |    +-- SystemError                      一般的解释器系统错误
      |    +-- TypeError                        对类型无效的操作
      |    +-- ValueError                       传入无效的参数
      |         +-- UnicodeError                        Unicode 相关的错误
      |              +-- UnicodeDecodeError                      Unicode 解码时的错误
      |              +-- UnicodeEncodeError                      Unicode 编码时错误
      |              +-- UnicodeTranslateError                   Unicode 转换时错误
      +-- Warning                      警告的基类
           +-- DeprecationWarning              关于被弃用的特征的警告
           +-- PendingDeprecationWarning       关于特性将会被废弃的警告
           +-- RuntimeWarning                  可疑的运行时行为(runtime behavior)的警告
           +-- SyntaxWarning                   可疑的语法的警告
           +-- UserWarning                     用户代码生成的警告
           +-- FutureWarning                   关于构造将来语义会有改变的警告
	   +-- ImportWarning                       关于模块进口可能出现错误的警告的基类。
	   +-- UnicodeWarning                      有关Unicode警告的基类。
	   +-- BytesWarning                        有关字节警告相关的基类。
</code>

Python 3 标准异常

via : https://docs.python.org/3/library/exceptions.html#bltin-exceptions

<code>
 BaseException        所有异常的基类
 +-- SystemExit                解释器请求退出
 +-- KeyboardInterrupt         用户中断执行(通常是输入^C)
 +-- GeneratorExit             生成器调用close()方法时触发的
 +-- Exception                 常规错误的基类,异常都是从基类Exception继承的。
      +-- StopIteration                迭代器没有更多的值
      +-- StopAsyncIteration           停止异步迭代
      +-- ArithmeticError              所有数值计算错误的基类
      |    +-- FloatingPointError               浮点计算错误
      |    +-- OverflowError                    数值运算超出最大限制
      |    +-- ZeroDivisionError                除(或取模)零 (所有数据类型)
      +-- AssertionError               断言语句失败
      +-- AttributeError               访问未知对象属性
      +-- BufferError                  缓冲区操作不能执行
      +-- EOFError                     没有内建输入,到达EOF 标记
      +-- ImportError                  导入模块/对象失败
      +-- LookupError                  无效数据查询的基类,键、值不存在引发的异常
      |    +-- IndexError                       索引超出范围
      |    +-- KeyError                         字典关键字不存在
      +-- MemoryError                  内存溢出错误(对于Python 解释器不是致命的)
      +-- NameError                    未声明/初始化对象 (没有属性)
      |    +-- UnboundLocalError                访问未初始化的本地变量
      +-- OSError                      操作系统错误
      |    +-- BlockingIOError                  操作对象为非阻塞时引发
      |    +-- ChildProcessError                子进程操作失败
      |    +-- ConnectionError                  基类连接问题
      |    |    +-- BrokenPipeError                     管道出错时写入数据
      |    |    +-- ConnectionAbortedError              连接中断
      |    |    +-- ConnectionRefusedError              连接拒绝
      |    |    +-- ConnectionResetError                连接被重置
      |    +-- FileExistsError                  文件或目录已存在
      |    +-- FileNotFoundError                请求的文件或目录不存在
      |    +-- InterruptedError                 系统调用中断
      |    +-- IsADirectoryError                把目录当文件来操作时
      |    +-- NotADirectoryError               操作的是非目录
      |    +-- PermissionError                  权限不足
      |    +-- ProcessLookupError               进程不存在
      |    +-- TimeoutError                     系统执行超时
      +-- ReferenceError               弱引用(Weak reference)试图访问已经垃圾回收了的对象
      +-- RuntimeError                 一般的运行时错误
      |    +-- NotImplementedError              尚未实现的方法
      |    +-- RecursionError                   栈溢出
      +-- SyntaxError                  语法错误
      |    +-- IndentationError                 缩进错误
      |         +-- TabError                            Tab和空格混用
      +-- SystemError                  一般的解释器系统错误
      +-- TypeError                    对类型无效的操作
      +-- ValueError                   传入无效的参数
      |    +-- UnicodeError                     Unicode 相关的错误
      |         +-- UnicodeDecodeError                  Unicode 解码时的错误
      |         +-- UnicodeEncodeError                  Unicode 编码时错误
      |         +-- UnicodeTranslateError               Unicode 转换时错误
      +-- Warning                      警告的基类
           +-- DeprecationWarning               关于被弃用的特征的警告
           +-- PendingDeprecationWarning        关于特性将会被废弃的警告
           +-- RuntimeWarning                   可疑的运行时行为(runtime behavior)的警告
           +-- SyntaxWarning                    可疑的语法的警告
           +-- UserWarning                      用户代码生成的警告
           +-- FutureWarning                    关于构造将来语义会有改变的警告
           +-- ImportWarning                    关于模块进口可能出现错误的警告的基类。
           +-- UnicodeWarning                   有关Unicode警告的基类。
           +-- BytesWarning                     有关字节警告相关的基类。
           +-- ResourceWarning                  有关资源使用警告的基类。
 
</code>

python 中常见的异常

 

异常 描述
NameError 未声明/初始化对象 (没有属性)
ZeroDivisionError 除(或取模)零 (所有数据类型)
SyntaxError 语法错误
IndexError 索引超出序列范围
KeyError 请求一个不存在的字典关键字
IOError 输入输出错误(比如你要读的文件不存在)
AttributeError 访问未知对象属性
ValueError 传入无效的参数

 

 

 


DevOps-田飞雨 》》转载请注明源地址
喜欢 (0)or分享 (0)
发表我的评论
取消评论
*

表情 贴图 加粗 链接 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址