首先 python的錯誤有哪些呀?(賣個小萌)
語法錯誤,語義錯誤 ,邏輯錯誤
語法錯誤 包括print後面沒有引號,使用中文等
語義錯誤 包括1/0之類的錯誤
邏輯錯誤 代碼得不到需要的結果
爲了處理這些問題,異常,就此而生
而python在異常中,有try except raise三個比較重要的關鍵字,具體使用如下
代碼片段
try: #關鍵字,表示測試是否拋出異常
x=5/0
print (x)
except ZeroDivisionError as e: #except 捕獲異常特定
print("不能除0",e)
except: #出現其他異常
print("其他錯誤")
else:
print("沒有異常")
def methon(): #創建異常方法
raise NotImplemented("該方法未實現") #拋出異常
methon()
關鍵字還是比較容易掌握的,較爲麻煩的是拋出異常的類型,這裏給大家有所總結
1.AttributeError:訪問對象屬性時引發的異常,如屬性不存在或不支持賦值等。
2.ImportError:導入模塊出錯引發的異常( 無法引入模塊或包;基本上是路徑問題或名稱錯誤)。
3.IndexError :下標索引超出序列邊界,比如當x只有三個元素,卻試圖訪問x[5]
4.IndentationError:沒使用正確縮進時引發的異常( 語法錯誤(的子類) ;代碼沒有正確對齊)。
5.TypeError :在運算或函數調用中,使用了不兼容的類型時引發的異常(傳入對象類型與要求的不符合)。
6.KeyError :試圖訪問字典裏不存在的鍵
7.KeyboardInterrupt: Ctrl+C被按下
8.NameError :嘗試訪問一個沒有申明的變量
9.SyntaxError: Python代碼非法,代碼不能編譯(個人認爲這是語法錯誤,寫錯了)
10.UnboundLocalError :試圖訪問一個還未被設置的局部變量,基本上是由於另有一個同名的全局變量,導致你以爲正在訪問它
11.ValueError :傳入一個調用者不期望的值,即使值的類型是正確的
12.IOError :輸入/輸出異常;基本上是無法打開文件
13.EOFError:使用input()函數讀文件時,遇到文件結束標誌EOF時發生的異常。文件對象的read()和readline()方法遇到EOF時返回空子字符串,不會引發異常。