在 Python 中,用 異常對象 來表示異常情況。遇到錯誤後,會引發異常。若,該異常未被 處理 或 捕捉,程序就會用 回溯(traceback) 來終止程序的運行。這個部分,常用於 使程序能捕捉錯誤並對其進行處理,使程序得以順利運行。只有很少數情況用於提示錯誤,並終止程序。
- raise 語句
使用 raise 語句,可以引發異常。即,無論是否確實有錯誤引發異常,用戶都可通過該語句都可以拋出異常。
類名 | 描述 |
Exception |
所有異常的基類 |
AttributeError | 特性引用或賦值失敗時引發 |
IOError | 試圖打開不存在的文件(包括其他情況)時引發 |
IndexError | 在使用序列中不存在的索引時引發 |
KeyError | 在使用映射中不存在的索引時引發 |
NameError | 再找不到名字(變量)時引發 |
SyntaxError | 在代碼爲錯誤形式時引發(基本語法格式) |
TypeError | 在內建操作或者函數應用於錯誤類型的對象時引發 |
ValueError | 在內建操作或者函數應用於正確類型的對象,但是該對象使用不合適的值時引發 |
ZeroDivisionError | 在除法運算或模除運算,第二個參數(除數)爲 0 時引發 |
以上,是常見的異常信息類型。
- 除了Python自帶的異常,使用者還可以自定義異常。但是要確保從 Exception 類繼承
- 關於語法的格式,在Python中是 try except else finally 的搭配。但是,通常使用 try except 搭配,else 和 finally 是進階使用,用戶可選擇性使用。
try :
<代碼塊1>
except :
<代碼塊2>
else :
<代碼塊3>
finally :
<代碼塊4>
else後的代碼塊,僅在不發生異常時執行。 finally後的代碼塊則一定執行。無論是否發生異常