1. 程式人生 > >Python核心編程第二版 第十章課後答案

Python核心編程第二版 第十章課後答案

syntax arp 語句 打開文件 ast pre 代碼塊 any 運行

10.1

引發異常。以下的哪個因素會在程序執行時引發異常?註意這裏我們問的並不是異常

的原因。

a) 用戶;

b) 解釋器;

c) 程序;

d) 以上所有;

e) 只有 b) 和 c);

f) 只有 a) 和 c)

f

 

10-2.引發異常。參考上邊問題的列表,哪些因素會在執行交互解釋器時引發異常?

f

  

10-3.關鍵字。用來引發異常的關鍵字有哪些?

raise

  

10-4.關鍵字。try-except和try-finally有什麽不同?

try-except:當try代碼塊運行出錯,except代碼塊才會被執行(匹配到相應異常時),處理完異常後try-except後的代碼會繼續往下執行;

try-finally:不管try代碼塊是否出現異常,最終都會執行finally裏的代碼。如果出現異常,執行完finally代碼塊後,異常會繼續往上層拋。

i = 1
try:
    num = 10%i
except:
    print(except)

try:
    num = 10%i
finally:
    print(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: invalid syntax
(b) IndexError: list index out of range
(c) NameError: name ‘x‘ is not defined
(d) ZeroDivisionError: integer division or modulo by zero
(e) ValueError: math domain error

  

10-6.改進的open()。為內建的open()函數創建一個封裝。使得成功打開文件後,返回文件句柄:若打開失敗則返回給調用者None,而不是生成一個異常。這樣你打開文件就不需要額外的異常處理語句。

Python核心編程第二版 第十章課後答案