9 python 异常类的实例和清除异常

异常类的实例

  • 每当有一个异常类输出,该异常类都会创建一个实例,这个实例会继承了异常类的所有属性。
  • 每一个异常类实例,都有一个args属性
  • args属性是一个元祖格式,这个元祖格式可能只包含错误信息的字符串

看下面的例子

try:
    x = [1,2,3]
    print(x[4])
except IndexError as i:
    print(i)
    print(i.args)

运行结果

list index out of range
('list index out of range',)

再看一个例子

try:
    file = open("a","r")
except FileNotFoundError as f:
    print(f)
    print(f.args)

运行结果

[Errno 2] No such file or directory: 'a'
(2, 'No such file or directory')

清除异常 finally

  • 不管try内的语句是否被运行,finally里面的语句始终运行

看一个例子

# 当程序数据正常会运行finally下面的语句
try:
    x = [1,2,3]
    print(x[2])
except IndexError as i:
    print(i.args)
finally:
    print("异常已经被清除")

运行结果

3
异常已经被清除

再看一个例子

# 当程序数据不正常会运行finally下面的语句
try:
    x = [1,2,3]
    print(x[4])
except IndexError as i:
    print(i.args)
finally:
    print("异常已经被清除")

运行结果

('list index out of range',)
异常已经被清除
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值