Python之異常設計(一)
阿新 • • 發佈:2018-06-15
final 崩潰 進行 n) finally list 發生 err exception
一 定義
異常分為兩類:一類是自動觸發異常如除零錯誤;另一類是通過raise觸發。
二 為什麽要使用異常
當程序運行時,如果檢測到程序錯誤,Python就會引發異常,我們可以在程序中使用try語句捕獲異常,並對異常進行處理。如果我們不做異常的捕獲,異常就會一直往上層拋出,直到頂層Python的默認異常處理器,默認異常處理器將會停止程序並打印異常,這通常會引起程序崩潰,造成不好的用戶體驗,這不是我們想要的。
三 捕獲異常
try: list=[2] print(list[1] except IndexError: print(‘goto exception‘)
四 引發異常
try raise IndexError except IndexError: print(‘goto exception‘)
五 自定義異常
class MyException(Exception) pass def raise_error(): raise MyException() try: raise_error() except MyException: print(‘goto ‘)
六 終止行為 finally
可以通過finally定義不管是否發生異常都執行的行為。當發生異常時,執行finally塊中的代碼,然後將異常往上拋。比如,我們想要在調用的函數執行完或發生異常時,釋放數據庫連接或確保文件關閉,就可以在finally中來實現
try: raise IndexError finally: pass
以上是Python異常的基本知識,我將在下一篇進一步探討異常
Python之異常設計(一)