Python 環境下的異常及處理
阿新 • • 發佈:2019-02-04
在 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後的程式碼塊則一定執行。無論是否發生異常