追蹤資訊———異常型別—————異常值
traceback——valueerror——異常值
常用異常:
attributeerror 試圖訪問乙個物件沒有的樹形,比如foo.x,但是foo沒有屬性xioerror 輸入/輸出異常;基本上是無法開啟檔案
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會附加一些錯誤位置的資訊到...