Python培訓分享:Python內建標準異常及其解析

千鋒武漢發表於2021-11-10

  本期小編為大家帶來的 Python培訓教程是關於“Python內建標準異常及其解析”的內容,我們都知道,在Python技術運作下,總會出現一些Python無法正常處理的程式時就會發生一個異常。異常是一個事件,此事件是在程式執行過程中發生,而且會影響程式的正常執行。編譯過程中產生的不是異常,而是錯誤,但是我們一般將Error作為異常的一種。所以異常包括Error和Exception。

src=http___inews.gtimg

  Python培訓分享:Python內建標準異常及其解析:下面就是Python內建標準異常以及對應的文字描述

  0.BaseException 所有異常的基類。

  1.SystemExit 直譯器請求退出。

  2.KeyboardInterrupt 使用者終端執行(通常是輸入)。

  3.GeneratorExit 生成器發生異常來通知退出。

  4.StandardError 所有內建標準異常的基類。

  5.Exception 常規錯誤的基類

  1)StopIteration 迭代器沒有更多的值

  2)ArithmeticError 所有數值計算錯誤的基類

  ①FloatingPointError 浮點計算錯誤

  ②OverflowError數值運算超出最大限制

  ③ZeroDivisionError 除(或取模)零(所有資料型別)

  3)AssertionError 斷言語句失敗

  4)AttributeError 物件沒有這個屬性

  5)BufferError 快取錯誤

  6)EOFError 沒有內建輸入,到達EOF標記

  7)EnvironmentError 作業系統錯誤的基類

  8)IOError 輸入/輸出操作失敗

  9)LookupError 無效資料查詢的基類

  ①IndexError 序列中沒有此索引

  ②KeyError 對映中沒有這個鍵

  10)MemoryError 記憶體溢位錯誤(對於Python直譯器不是致命的)

  11)NameError 未宣告/初始化物件(沒有屬性)

  ①UnboundLocalError 訪問未初始化的本地變數

  12)OSError 作業系統錯誤

  13)WindowsError 系統呼叫失敗

  14)ReferenceError 弱引用試圖訪問已經垃圾回收了的物件

  15)RuntimeError 一般的執行時錯誤

  ①NotImplementedErrro 尚未實現的方法

  16)SyntaxError 語法錯誤

  ①IndentationError 縮排錯誤

  a.TabError 空格和Tab混用

  17)SystemError 一般的直譯器系統錯誤

  18)TypeError 對型別無效的操作

  19)ValueError 傳入無效的引數

  ①UnicodeError Unicode相關的錯誤

  a.UnicodeDecodeError 解碼時錯誤

  b.UnicodeEncodeError編碼時錯誤

  c.UnicodeTranslaterror 轉換時錯誤

  20)Warning

  ①DeprecationgWarning 關於被棄用的特徵的警告

  ②PendingDeprecationgWarning 關於特性將會被廢棄的警告

  ③RuntimeWarning 可疑的執行時行為

  ④SyntaxWaring 可疑的語法警告

  ⑤UserWarning 使用者程式碼生成的警告

  ⑥FutureWaring 關於構造將來語義會有改變的警告

   異常處理:

  捕捉異常可以使用try/except語句。try的工作原理是,當開始的一個try語句後,Python就在當前程式的上下文中做標記,這樣當異常出現時就可以回到這裡,try子句先執行。如果當try後的語句執行時發生異常,Python就跳回到try並執行第一個匹配該異常的except子句,異常處理完畢,控制流就通過整個try語句(除非在處理異常時又引發新的異常)。如果try語句中發生異常,卻沒有匹配的except子句,異常將被遞交到上層的try,或者到程式的最上層(這樣將結束程式,並列印預設的出錯資訊)。如果try子句執行時沒有發生異常,Python將執行else語句後的語句,然後控制流通過整個try語句。

  此外如果使用try-finally語句無論是否發生異常都將執行最後finally後相應的程式碼。

  除去這些常見的標準異常型別,使用者還可以自定義異常型別。通過建立一個新的異常類,程式可以命名他們自己的異常。異常應該是典型的繼承自Exception類,通過直接或間接的方式。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69996644/viewspace-2841387/,如需轉載,請註明出處,否則將追究法律責任。

相關文章