Python內建異常型別全面彙總
阿新 • • 發佈:2020-05-29
內建異常基類
在 Python 中,所有異常必須為一個派生自 BaseException 的類的例項。 通過子類化建立的兩個不相關異常類永遠是不等效的,既使它們具有相同的名稱。
下列異常主要被用作其他異常的基類。
BaseException: 所有異常的基類
Exception(重點掌握)
所有內建的非系統退出類異常都派生自此類。 所有使用者自定義異常也應當沒打算自此類。
ArithmeticError
此基類用於派生針對各種算術類錯誤而引發的內建異常: OverflowError,ZeroDivisionError,FloatingPointError。
BufferError
當與 緩衝區 相關的操作無法執行時將被引發。
LookupError
此基類用於派生當對映或序列所使用的鍵或索引無效時引發的異常: IndexError,KeyError
內建異常的層次結構
BaseException 所有異常的基類 +-- SystemExit 直譯器請求退出 +-- KeyboardInterrupt 使用者中斷執行(通常是輸入^C) +-- GeneratorExit 生成器(generator)發生異常來通知退出 +-- Exception 常規錯誤的基類 +-- StopIteration 迭代器沒有更多值 +-- StopAsyncIteration 必須通過非同步迭代器物件的__anext__()方法引發以停止迭代 +-- ArithmeticError 所有數值計算錯誤的基類 | +-- FloatingPointError 浮點計算錯誤 | +-- OverflowError 數值運算超出最大限制 | +-- ZeroDivisionError 除(或取模)零 (所有資料型別 +-- AssertionError 斷言語句失敗 +-- AttributeError 物件沒有這個屬性 +-- BufferError 與緩衝區相關的操作時引發 +-- EOFError 沒有內建輸入,到達EOF 標記 +-- ImportError 匯入失敗 | +-- ModuleNotFoundError 找不到模組 +-- LookupError 無效資料查詢的基類 | +-- IndexError 序列中沒有此索引(index) | +-- KeyError 對映中沒有這個鍵 +-- MemoryError 記憶體溢位錯誤 +-- NameError 未宣告、初始化物件 | +-- UnboundLocalError 訪問未初始化的本地變數 +-- OSError 作業系統錯誤, | +-- BlockingIOError 操作將阻塞物件設定為非阻塞操作 | +-- ChildProcessError 子程序上的操作失敗 | +-- ConnectionError 與連線相關的異常的基類 | | +-- BrokenPipeError 在已關閉寫入的套接字上寫入 | | +-- ConnectionAbortedError 連線嘗試被對等方中止 | | +-- ConnectionRefusedError 連線嘗試被對等方拒絕 | | +-- ConnectionResetError 連線由對等方重置 | +-- FileExistsError 建立已存在的檔案或目錄 | +-- FileNotFoundError 請求不存在的檔案或目錄 | +-- InterruptedError 系統呼叫被輸入訊號中斷 | +-- IsADirectoryError 在目錄上請求檔案操作 | +-- NotADirectoryError 在不是目錄的事物上請求目錄操作 | +-- PermissionError 在沒有訪問許可權的情況下執行操作 | +-- ProcessLookupError 程序不存在 | +-- TimeoutError 系統函式在系統級別超時 +-- ReferenceError 弱引用試圖訪問已經垃圾回收了的物件 +-- RuntimeError 一般的執行時錯誤 | +-- NotImplementedError 尚未實現的方法 | +-- RecursionError 直譯器檢測到超出最大遞迴深度 +-- SyntaxError Python 語法錯誤 | +-- IndentationError 縮排錯誤 | +-- TabError Tab 和空格混用 +-- SystemError 一般的直譯器系統錯誤 +-- TypeError 對型別無效的操作 +-- ValueError 傳入無效的引數 | +-- UnicodeError Unicode 相關的錯誤 | +-- UnicodeDecodeError Unicode 解碼時的錯誤 | +-- UnicodeEncodeError Unicode 編碼時錯誤 | +-- UnicodeTranslateError Unicode 轉換時錯誤 +-- Warning 警告的基類 +-- DeprecationWarning 關於被棄用的特徵的警告 +-- PendingDeprecationWarning 關於構造將來語義會有改變的警告 +-- RuntimeWarning 可疑的執行行為的警告 +-- SyntaxWarning 可疑的語法的警告 +-- UserWarning 使用者程式碼生成的警告 +-- FutureWarning 有關已棄用功能的警告的基類 +-- ImportWarning 模組匯入時可能出錯的警告的基類 +-- UnicodeWarning 與Unicode相關的警告的基類 +-- BytesWarning bytes和bytearray相關的警告的基類 +-- ResourceWarning 與資源使用相關的警告的基類
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。