【python學習】python的常見異常類

2021-12-28 CV之道

收錄於話題 #python 32個

中國史之【盤庚遷殷】:

      商朝建立後屢次遷都。盤庚即位後,自奄(今山東曲阜)遷都至殷(今河南安陽小屯),開墾荒地,長期定居下來。穩定的局面挽回了九世之亂以來商朝的衰落之勢。

今天講python的標準異常類。有需要的也可以直接去我的github查看全部筆記:

https://github.com/JackKoLing/python_notes_with_ten_days

俗話說:「好記性不如爛筆頭」,多寫寫多記記,總不會錯。多一些不為什麼的堅持,少一些功利主義的追求。

對於環境的配置,可以參考以下兩篇:

try:    print(3/0)except BaseException:    print("Exception occurs.")>>>Exception occurs.

try:    f = open('a.txt','r')except BaseException:    print("Exception occurs.")>>>Exception occurs

大多的標準異常都是由BaseException派生的,有三個抽象的子類:

ArithmeticError: 由於算術錯誤而引發的異常基類,如:OverflowError, ZeroDivisionError, FloatingPointError

LookupError:容器在接收到一個無效鍵或索引時引發的異常基類,如:IndexError, KeyError

EnvironmentError:由於外部原因而導致的異常基類,如:IOError, OSError, WindowsError

AssertionError 斷言語句錯誤

AttributeError 屬性引用或賦值錯誤

FloatingPointError 浮點型運算錯誤

IOError I/O操作失敗

ImportError import語句不能找到要導入的模塊,或者不能找到該模塊特別請求的名稱

IndentationError 解析器遇到了一個由於錯誤的縮進而引發的語法錯誤

IndexError 用來索引序列的整數超出了範圍,就是下標錯誤

KeyError 用來索引映射的鍵不在映射中

KeyboardInterrupt 用戶按了中斷鍵(ctrl+c、ctrl+break或delete鍵)

MemoryError 爆內存

NameError 引用了一個不存在的變量名

NotImplementedError 由抽象基類引發的異常,用於指示一個具體的子類必須覆蓋一個方法

OSError 由模塊os中的函數引發的異常,用來指示平臺相關的錯誤

OverflowError 整數運算的結果太大導致溢出

SyntaxError 語法錯誤

SystemError python本身或某些擴展模塊中的內部錯誤

TypeError 對某對象執行了不支持的操作

UnboundLocalError 引用未綁定值的本地變量

UnicodeError 在Unicode的字符串之間進行轉換時發生的錯誤

ValueError 應用於某個對象的操作或函數,這個對象具有正確的類型,但確有不適當的值

WindowsError 模塊os中的函數引發的異常,用來指示與Windows相關的錯誤

ZeroDivisionError 除數為0的錯誤

 class CustomAttributeError(CustomException, AttributeError):

assert語句相當於自定義異常(手動觸發異常),用於在程序中引入調試代碼

語句為:assert condition[, expression]

如果條件滿足,則assert不做任何操作。反之使用expression作為參數來實例化AssertionError並引發結果實例

若運行python時不使用-O選項,則__debug__內置變量為True。反之為False,編譯器不為assert語句生成代碼

所以語句相當於:先判斷__debug__,再判斷condition。若為not condition, 則raise AssertionError,<expression>

簡單來說,就是assert後面的條件語句不滿足,就會引發異常。

常用來判斷某個向量的shape是否正確,確保程序階段性正常

x = 1assert x == 0,"assert error.">>>
AssertionError Traceback (most recent call last)<ipython-input-3-71d4300abcd1> in <module> 1 x = 1----> 2 assert x == 0,"assert error."
AssertionError: assert error.

【聲明】:學習筆記基於網際網路上各種學習資源的個人整理。

以上是本期內容,下期介紹python的解釋器環境。

我叫小保,一名計算機視覺愛好者、學習者、追隨者,歡迎關注我一起學習。

一起學習進步!

相關焦點

  • python入門——Python中異常處理
    python大數據課堂已經開始了。想轉行大數據,數據挖掘,機器學習,人工智慧的小夥伴可以關注啦。上一篇帶大家了解了python中的I/O函數。今天我們來繼續了解python中的異常處理。調試環境以python3.6環境為例。需要代碼和demo的朋友可以搜索「欒鵬全棧」到我的CSDN博客。
  • 16-python中的異常
    通過前兩天的文章14-python中的函數,15-再敘python中的函數我們對python中有關函數的知識有了系統的認識和學習,今天我們將接著來看一下python中的異常。(一)Bug的由來和分類    "Bug"一詞的原意是"昆蟲"或"蟲子";而在電腦系統或程序中隱藏著的一些未被發現的缺陷或問題,人們也叫它"bug"。
  • Python異常處理
    問題描述大家在使用python語言寫代碼的時候難免會出一些錯誤,而才入門的朋友們往往不知道是哪裡出了錯或者不知道自己錯在哪裡、什麼錯誤。所以我們要知道是哪行代碼出錯,其次室錯誤的類型是什麼,錯在那個細節,逐步分析,從而解決錯誤並改正。
  • 一篇文章了解python常見內置異常報錯
    我們在寫python程序的時候經常會遇到一些報錯信息(異常),有一些可能是人為進行的定義
  • Python最佳經典學習路線
    如何學習Python python語言基礎:(帶你熟悉python語言的特性,學會使用python開發環境,使用python開發一些簡單的案例) (1)Python3入門,數據類型,字符串 (2)判斷/循環語句,函數,
  • python入門學習異常處理類型
    前言異常是指在程序執行過程中發生的一個事件,影響了程序的正常執行,例如:0做了分母。異常是Python對象,表示一個錯誤。當Python腳本發生異常時我們需要捕獲處理它,否則程序會終止執行。在Java語言中我們知道異常的常用結構為try catch組成,有時也會用到finally,那麼在python中異常是如何來處理的呢?python中的異常處理1.python異常簡單語法python異常的簡單語法為try-except-else語法,注意這裡的關鍵字是except而不是Exception,這與java是有區別的。
  • python學習筆記(9): try...except 異常捕獲
    目前正在學習python基礎,同時也在leetcode-cn上刷算法題目,有興趣的同學一起哦。最近學習了python如何處理異常,發現一篇比較好的文章,整理了一下,供大家學習研究。多重異常的處理,可以在try語句中嵌套另一個try語句,一旦發生異常,python匹配最近的except語句。
  • python異常處理筆記
    收錄於話題 #python What:python異常處理是什麼?
  • python初學者必看的學習路線 Python是近幾年比較火的程式語言
    Python是近幾年比較火的程式語言之一,因為人工智慧的火爆,讓很多人都想從事python開發。很多零基礎學員在學習python的時候都會走一些彎路,下面小編就為大家分享python學習路線圖,幫助零基礎學員在學習的時候少走彎路。 很多人都在問Python學習步驟應該如何安排?
  • 好程式設計師Python教程分享常見的Python面試題
    好程式設計師Python教程分享常見的Python面試題,程式設計師面試難免會需要進行筆試,筆試是考驗程式設計師基礎功底的重要環節,根據很多小夥伴的面試反饋,今天總結分享了一些常見的Python面試題,想要看Python面試是不是可以順利通過,這些常見的Python面試題你應該看看。
  • 一文搞懂Python錯誤和異常
    上面示例可以看到,針對語法錯誤,python解析器會輸出錯誤的那一行,並且在最先找到的錯誤的位置標記了一個箭頭。熟悉python語法後,可以避免語法錯誤,但是代碼常會發生異常(Exception)。Python用異常對象(exception object)來表示異常情況。
  • python面向對象之異常處理
    捕獲異常 2.1 簡單的捕獲異常語法 在程序開發中,如果 對某些代碼的執行不能確定是否正確,可以增加 `try(嘗試)` 來 捕獲異常 捕獲異常最簡單的語法格式:```pythontry: 嘗試執行的代碼except: 出現錯誤的處理``` `try
  • 小白實例教程——Python異常機制解決思路
    __init__(self,err)class PreconditionsException(DatabaseException): def __init__(self,err='PreconditionsErr'): DatabaseException.
  • 一文教你讀懂 Python 中的異常信息
    錯誤輸出的最後一行一般會告訴你引發了什麼類型的異常,以及關於該異常的一些相關信息。錯誤信息的前幾行指出了引發異常的代碼文件以及行數。在上面的錯誤信息中,異常類型是 NameError,意思是名稱使用了一個沒定義的名稱(變量、函數、類)的引用。在本例中,引用的名稱是 someon。一般情況下看錯誤信息的最後一行就能定位到錯誤的原因。
  • python中的異常捕獲
    無論是編程新手還是老手,都會遇到過程序報錯,終止執行的情況,對於python的報錯信息,可以分為以下兩大類語法錯誤,syntax error
  • Python 基礎知識整理 - 錯誤和異常(1)
    語法錯誤 語法錯誤,也稱為解析錯誤,可能是你在學習 Python 時遇到的最常見的抱怨: while True print('Hello world') 運行結果: C:\Python310>python 2.py File "C:\Python310\2.py", line 1 while True print('Hello world') ^^^^^^^^^^^^^^^^^^^^^^^^^SyntaxError: invalid syntax.
  • 零基礎如何入門python?python新手學習路線
    怎麼學python入門?python新手學習路線,Python入門應該了解一些基本的計算機編程術語。
  • python教程之九錯誤和異常處理
    如果在執行 try 子句的過程中發生了異常,那麼 try 子句餘下的部分將被忽略。如果異常的類型和 except 之後的名稱相符,那麼對應的 except 子句將被執行。如果一個異常沒有與任何的 excep 匹配,那麼這個異常將會傳遞給上層的 try 中。一個 try 語句可能包含多個except子句,分別來處理不同的特定的異常,最多只有一個分支會被執行。
  • 適合新手學習的Python爬蟲書籍
    點擊藍字「python
  • python基礎---異常處理
    說說廢話最近一直忙著一些事情好久沒有更新了,加上最近電腦在跑一些大數據,也就九百萬條數據,還是沒有加上一些複雜模型的,結果我的jupyter notebook就崩掉了,最後迫不得已重裝軟體,還在苦苦配置環境中,等以後學習