python异常处理
点击上方蓝字关注我们

哈哈哈
作为一个码农, 每天都在写代码, 不可避免的会出现错误, 也有一些时候, 知道可能会出现错误, 必须要在代码中处理, 以免影响代码正常流程, 这篇讲一下常见的异常错误, 以及如何处理异常
常见异常
- AssertError: 断言语句(assert)失败
- AttributeError: 尝试访问未知的对象属性
- EOFError: 用户输入文件末尾标志EOF(Ctrl+d)
- FloatingPointError: 浮点计算错误
- GeneratorExit: generator.close()方法被调用的时候
- ImportError: 导入模块失败的时候
- IndexError: 索引超出序列的范围
- KeyError: 字典中查找一个不存在的关键字
- KeyboardInterrupt: 用户输入中断键(Ctrl+c)
- MemoryError: 内存溢出(可通过删除对象释放内存)
- NameError: 尝试访问一个不存在的变量
- NotImplementedError: 尚未实现的方法
- OSError: 操作系统产生的异常(例如打开一个不存在的文件)
- OverflowError: 数值运算超出最大限制
- ReferenceError: 弱引用(weak reference)试图访问一个已经被垃圾回收机制回收了的对象
- RuntimeError: 一般运行时的错误
- StopIteration: 迭代器没有更多的值
- SyntaxError: 语法错误
- IndentationError: 缩进错误
- TabError: Tab和空格混合使用
- SystemError: Python编译器系统错误
- SystemExit: Python编译器进程被关闭
- TypeError: 不同类型间的无效操作
- UnboundLocalError: 访问一个未初始化的本地变量(NameError的子类)
- UnicodeError: Unicode相关的错误(ValueError的子类)
- UnicodeEncodeError: Unicode编码时的错误(UnicodeError的子类)
- UnicodeDecodeError: Unicode解码时的错误(UnicodeError的子类)
- UnicodeTranslateError: Unicode转换时的错误(UnicodeError的子类)
- ValueError: 传入无效的参数
- ZeroDivisionError: 除数为零
异常处理
格式:
1 | try: |
多说无用, 写个小例子
1 | # -*- coding: utf-8 -*- |
输出:
1 | 自定义的异常, 不知道什么错误 |
这篇完了
代码异常处理还有个典型的应用就是给代码块加个装饰器, 用来重试代码块或函数, 下篇讲装饰器
壹伴精选
围观
丨更多
热文
丨更多
热文
丨更多
热文
丨更多
热文
丨更多

作者:
胖胖不胖
版权声明:
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 不止于python
感谢您的支持,我会继续努力!
微信支付
支付宝
