錯誤與異常

2022-03-17 08:27:21 字數 2782 閱讀 5802

追蹤資訊———異常型別—————異常值

traceback——valueerror——異常值

常用異常:

attributeerror 試圖訪問乙個物件沒有的樹形,比如foo.x,但是foo沒有屬性x

ioerror 輸入/輸出異常;基本上是無法開啟檔案

importerror 無法引入模組或包;基本上是路徑問題或名稱錯誤

indentationerror 語法錯誤(的子類) ;**沒有正確對齊

indexerror 下標索引超出序列邊界,比如當x只有三個元素,卻試圖訪問x[5]

keyerror 試圖訪問字典裡不存在的鍵

keyboardinterrupt ctrl+c被按下

nameerror 使用乙個還未被賦予物件的變數

syntaxerror python**非法,**不能編譯(個人認為這是語法錯誤,寫錯了)

typeerror 傳入物件型別與要求的不符合

unboundlocalerror 試圖訪問乙個還未被設定的區域性變數,基本上是由於另有乙個同名的全域性變數,

導致你以為正在訪問它

valueerror 傳入乙個呼叫者不期望的值,即使值的型別是正確的

arithmeticerror

assertionerror

attributeerror

baseexception

buffererror

byteswarning

deprecationwarning

environmenterror

eoferror

exception

floatingpointerror

futurewarning

generatorexit

importerror

importwarning

indentationerror

indexerror

ioerror

keyboardinterrupt

keyerror

lookuperror

memoryerror

nameerror

notimplementederror

oserror

overflowerror

pendingdeprecationwarning

referenceerror

runtimeerror

runtimewarning

standarderror

stopiteration

syntaxerror

syntaxwarning

systemerror

systemexit

taberror

typeerror

unboundlocalerror

unicodedecodeerror

unicodeencodeerror

unicodeerror

unicodetranslateerror

unicodewarning

userwarning

valueerror

warning

zerodivisionerror

更多異常

基本語法

1 try:

2 被檢測的**塊

3 except 異常型別:

4 try中一旦檢測到異常,就執行這個位置的邏輯

1 s1 = '

hello

' 2 try

: 3int(s1)

4 except

indexerror as e:

5 print

(e) 6 except

keyerror as e:

7 print

(e) 8 except

valueerror as e:

9 print

(e)10 #

except exception as e:

11 #

print(e)

12 else

:13 print('

try內**塊沒有異常則執行我')

14 finally

:15 print('

無論異常與否,都會執行該模組,通常是進行清理工作

')

觸發異常:

4 try

:5 raise typeerror('

型別錯誤')

6 except

exception as e:

7 print(e)

自定義異常

4 class

egonexception(baseexception):

5 def

__init__

(self,msg):

6 self.msg=msg

7 def

__str__

(self):

8 return

self.msg

9 10 try

:11 raise egonexception('

型別錯誤')

12 except

egonexception as e:

13 print(e)

出現必不可免的情況下使用異常,否則慎用

錯誤與異常

錯誤 語法錯誤也稱編譯錯誤,拼寫錯誤等導致編譯器無法將源 轉換為位元組碼 邏輯錯誤是程式可以執行 本身不報錯 但執行結果不正確,需要根據結果來除錯判斷 異常沒有語法錯誤的前提下,在執行期間產生特定的錯誤 每個特定錯誤都對應到乙個異常類物件,當發生某個特定錯誤時,其對應的異常類物件的例項物件會被輸出 ...

錯誤 與 異常

1.perror 函式 void perror const char message 當某個庫函式出錯時,該庫函式首先會將代表出錯的具體原因出錯 儲存到全域性變數 errno 而 perror 只是將errno 代表的錯誤報告給使用者 實際上是呼叫strerrno errno 函式 注意,當庫函式執...

Lua 錯誤與異常

lua的基本函式庫 內建函式庫,不用載入即使用 包含一些針對錯誤和異常的處理功能。一 顯式拋錯誤或異常功能函式 1 error message level 功能 終止正在執行的函式,並返回message的內容作為錯誤資訊 error函式永遠都不會返回 通常情況下,error會附加一些錯誤位置的資訊到...