异常捕获预处理|Python技能树征题

1.常见异常的类型

常见异常类描述
FloatingPointError浮点计算错误
OverflowError数值运算超出最大限制
ZeroDivisionError除(或取模)零 (所有数据类型)
AttributeError对象没有这个属性
IOError输入/输出操作失败
ImportError导入模块/对象失败
IndexError序列中没有此索引(index)
KeyError映射中没有这个键
MemoryError内存溢出错误(对于Python 解释器不是致命的)
ValueError传入无效的参数

题目一

下列异常处理中正确输出了’get you!'的是:
A.

try:
    a = [1, 2, 3]
    print(a[4])
except MemoryError:
    print('get you!')

B.

try:
    a = [1, 2, 3]
    print(a[4])
except OverflowError:
    print('get you!')

C.

try:
    a = [1, 2, 3]
    print(a[4])
except KeyError:
    print('get you!')

D.

try:
    a = [1, 2, 3]
    print(a[4])
except IndexError:
    print('get you!')

正确答案:D

题目二

下列异常处理中正确输出了’get you!'的是:
A.

try:
    a = {}
    a[1] += 1
except IndexError:
    print('get you!')

B.

try:
    a = [1, 2]
    a.add(3)
except AttributeError:
    print('get you!')

C.

try:
    a = [1, 2]
    a = a.extend(a)
    a[-1] += 1
except IndexError:
    print('get you!')

D.

try:
    file = open('a.txt', 'w')
    file.write('write!')
except IOError:
    print('get you!')

正确答案:B

2.except、else与finally

except:发生异常,执行这块代码
else:如果没有异常执行这块代码
finally:无论是否发生异常都将执行最后的代码

题目三

以下代码段的正确输出是:

# 计算前20位斐波那契数
try:
    a = []
    a[0], a[1] = 1, 1
    for i in range(2, 20):
        a[i] = a[i - 1] + a[i - 2]
except KeyError:
    print('a', end='')
except IndexError:
    print('b', end='')
else:
    print('c', end='')
finally:
    print('d', end='')

A. ac
B.ad
C.bc
D.bd

正确答案:D

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值