python自定义全局异常_python笔记--错误与异常处理

目录

一、错误与异常处理

二、语法格式

三、异常及其导致错误

四、自定义异常

一、错误与异常处理

有时候程序执行到错误代码的时候,程序直接终止报错,出现了错误的提示,这就是“异常"。比如变量未定义,0做被除数都会报错。

二、语法格式

try:

可能 出现错误的代码块

except:

出错之后执行的代码块。(except可以指定类型捕获异常,except中的代码是捕获到异常时执行,避免程序因一段代码异常而使整个程序崩溃)

else:

没有出错的代码块

finally:

不管有没有出错都执行的代码块

三、异常及其导致错误

1异常             导致的错误

2AssertionError      assert语句失败。

3AttributeError      属性分配或引用失败

4EOFError          input( )函数达到文件结束条件时。

5FloatingPointError   浮点运算失败。

6GeneratorExit       调用生成器的close()方法时。

7ImportError         找不到导入的模块时

8IndexError   序列的索引超出范围。

9KeyError在字典中找不到键

10 KeyboardInterrupt 用户按下中断键(Ctrl+c或delete)时

11 MemoryError 操作耗尽内存

12 NameError局部或全局范围内找不到变量。

13Not ImplementedError由抽象方法提出

14OSError系统操作导致系统相关错误。

15 OverflowError算术运算的结果太大而无法表示。

16ReferenceError使用弱引用代理访问垃圾收集的引用。

17 RuntimeError错误不属于任何其他类别。

18stopIteration函数引发,以指示迭代器不再返回任何项。

19SyntaxError遇到语法错误时由解析器引发。

20IndentationError缩进不正确

21 TabError 当缩进由不一致的制表符和空格组成时引发。

22 SystemError 解释器检测到内部错误.

23SystemExit由sys. exit( )函数引发

24TypeError将函数或操作应用于类型不正确的对象时引发。

25 UnboundLocalError在函数或方法中引用局部变量,但没有将值绑定到该变量

26UnicodeError 发生与unicode相关的编码或解码错误时。

27 UnicodeEncodeError编码过程中发生与unicode相关的错误。

28UnicodeDecodeError解码过程中出现与unicode相关的错误

29 UnicodeTranslateError翻译过程中发生与unicode相关的错误。

38ValueError函数得到类型正确但值不正确的参数。

31ZeroDivisionError除法或模运算的第二个操作数为零

32Exception可捕获所有异常

四、自定义异常

自定义异常,要直接或间接继承Error或Exception类。

由开发者主动抛出自定义异常,在python中使用raise关键字。

如:

Class fnexcept(Exception):

try:

raise fnexcept()

exception fnexcept as e:

d98ab696b12c

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值