10-1 引发异常。以下的哪个因素会在程序执行时引发异常?注意这里我们问的并不是异常的原因。
a)用户
b解释器
c)程序
d)以上所有
e)只有b)和c)
f)只有a)和c)
答案为d
10-2 引发异常。参考上边问题的列表,哪些因素会在执行交互解释器时引发异常?
I/O、系统错误、边界值溢出
10-3 关键字。用来引发异常的关键字有哪些?
raise、try
10-4 关键字。try-except和try-finally有什么不同?
try-except:当try代码块运行错误时,except代码块才会被执行(匹配到相应异常时),处理完异常后try-except后的代码会继续往下执行;
try-finally:不管try代码块是否出现异常,最终都会执行finally里的代码。若出现异常,执行完finally代码块后,异常会继续往上层抛。
10-5.异常。下面这些交互式解释器下的Python代码段分别会引发什么异常(参阅表10.2给出的内建异常清单)
(a) >>> if 3 < 4 then: print '3 IS less than 4!'
(b) >>> aList = ['Hello', 'World!', 'Anyone', 'Home?']
>>> print 'the last string in aList is:', aList[len(aList)]
(c) >>> x
(d) >>> x = 4 % 0
(e) >>> import math
>>> i = math.sqrt(-1)
(a) SyntaxError
(b) IndexError
(c) NameError
(d) ZeroDivisionError
(e) ValueError