一、錯誤與異常
1.什么是錯誤
(1)語法錯誤(大小寫拼寫錯誤、括號不匹配等…)=> 不能正常執行
(2)邏輯錯誤(程序運行正常,只是最后結果不符合預期)
2.什么是異常
程序運行過程中,出現的意料之外的錯誤
• 如:打開的文件不存在、被除數為0、操作的數據類型不對、存儲錯誤,互聯網請求錯誤…
3.回溯信息
當程序運行時,發生了未處理的異常,Python就將終止執行程序,並以堆棧回溯(Traceback,也 稱向后追蹤)的形式顯示異常發生的上下文。
• 回溯信息告訴我們應該去哪里尋找問題的根源,對解決問題非常有幫助。
二、常見異常
常見異常類

三.異常處理
1.異常處理
在代碼被解釋執行的過程中可能會拋出異常。
那么也就是說,可能會發生,可能不會發生。對於這么不可預測的異常狀態如何處理?
1:即使程序出錯,也不想讓程序終止
2:如果出錯了,需要特殊處理
異常處理機制 try…except…
2.簡單的異常處理格式

3.執行順序
正常執行: try -> 執行代碼 -> 結束
遇到異常: try -> 遇到異常 -> 跳到excep -> 結束
4.except分支可以有多個

5.執行順序
執行匹配到第一個except則退出
如果父類異常在最前面,會吞噬所有子類異常(建議:先except子類,再except父類)
如果except捕獲的錯誤與觸發的錯誤不一致,程序會捕獲不到
6.else子句:沒有發生異常時執行

7.finally子句:不管異常有沒有發生都執行

8.異常嵌套

9.異常處理注意事項與建議
只執行最先匹配的一個except
如果父類異常在最前面,會吞噬所有子類異常
• 多except注意:
只會匹配一個except
要先寫子類異常再寫父類異常
如果except捕獲的錯誤與觸發的錯誤不一致,程序會捕獲不到
