錯誤:語法錯誤:指示軟件的結構上有錯誤,致使不能被解釋器解釋或編譯器編譯。python
邏輯錯誤:不完整的或不合法的輸入所致。express
異常:由於程序出現了錯誤而在正常控制流之外採起的行爲。 這個行爲又分爲兩個階段:1引發異常發生的錯誤 2檢測(和採起可能的措施)階段。ui
python中的異常:spa
NameError:嘗試訪問一個未聲明的變量code
ZeroDivisionError:除數爲零orm
SyntaxError:python解釋器語法錯誤對象
IndexError:請求的索引超出範圍索引
KeyError:請求一個不存在的字典關鍵字資源
IOError:輸入輸出錯誤編譯器
AttributeError:嘗試訪問未知的對象屬性
檢測和處理異常
try-except語句,可帶多個except
try: try_suite except: Execption[,reason]: except_suite
處理多個異常的except語句:前提是它們放在一個元組裏
except: (Execption1, Execption2)[,reason]: except_suite
捕獲全部的異常:不同意使用
異常參數:e
else子句:在else範圍中運行的任何代碼前,try範圍中的全部代碼必須徹底成功(沒有引起異常)
finally子句:不管異常是否發生、是否捕捉都會執行的一段代碼。
try-finally語句:
上下文管理:
with語句目的在於從流程圖中把try、except和finally關鍵字和資源分配相關代碼通通去掉,
with context_expr [as var]:
with_suite
觸發異常:
raise語句:raise[someException [, args [, traceback]]]
斷言:assert expression[,arguments]
標準異常: