python捕获特定类型异常的保留字_Python--异常处理和断言

try关键字,定义获取程序错误

except关键字,出现异常错误执行里面的代码

Exception定义错误类,Exception能获取到所有类型的错误错误,as创建错误对象名称,自动获取错误信息

#!/usr/bin/env python#-*- coding:utf8 -*-

"""获取程序错误信息"""

try: #try关键字定义获取程序错误

#代码块

a =str(字符串)print(a)except Exception as e: #except关键字出现异常错误执行里面的代码,Exception定义错误类,as创建错误对象自动获取错误信息

print(e) #打印错误对象输出错误信息#输出#name '字符串' is not defined

python中的异常种类非常多,每个异常专门用于处理获取某一项异常

常见错误类型

AttributeError 试图访问一个对象没有的树形,比如foo.x,但是foo没有属性x

IOError 输入/输出异常;基本上是无法打开文件

ImportError 无法引入模块或包;基本上是路径问题或名称错误

IndentationError 语法错误(的子类) ;代码没有正确对齐

IndexError 下标索引超出序列边界,比如当x只有三个元素,却试图访问x[5]

KeyError 试图访问字典里不存在的键

KeyboardInterrupt Ctrl+C被按下

NameError 使用一个还未被赋予对象的变量

SyntaxError Python代码非法,代码不能编译(个人认为这是语法错误,写错了)

TypeError 传入对象类型与要求的不符合

UnboundLocalError 试图访问一个还未被设置的局部变量,基本上是由于另有一个同名的全局变量,

导致你以为正在访问它

ValueError 传入一个调用者不期望的值,即使值的类型是正确的

我们在以后记录错误时,要想记录对应的错误信息可以用以下办法

先用对应的错误类型来获取,如果都不是前面对应的错误类型,最后用Exception来获取

#!/usr/bin/env python#-*- coding:utf8 -*-

"""获取程序错误信息"""

try:

a=str(字符串)print(a)except AttributeError as c: #出现对应错误就获取到信息,打印出来,如果不是对应错误则不执行

print(c)except IOError as d: #出现对应错误就获取到信息,打印出来,如果不是对应错误则不执行

print(d)except ImportError as e: #出现对应错误就获取到信息,打印出来,如果不是对应错误则不执行

print(e)except Exception as f: #都不是上面对应的错误,用Exception来不管是上面错误都获取到

print(f)#输出#name '字符串' is not defined

else主代码块执行完,执行该块

finally无论异常与否,最终执行该块

#!/usr/bin/env python#-*- coding:utf8 -*-

try:#主代码块

a =str(hjhb)exceptException as e:#代码错误执行模块

print(e)else:print("主代码块执行完,执行该块")finally:print("无论异常与否,最终执行该块")

主动触发异常,也就是没有错误,主动触发一个错误

raise关键字,主动触发一个错误

#!/usr/bin/env python#-*- coding:utf8 -*-

try:#主代码块

a = str("1234")raise Exception('错误了。。。')exceptException as e:#代码错误执行模块

print(e)#输出#错误了。。。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值