1. 程式人生 > 其它 >AI訓練營Python:TASK01_Python基礎入門-從變數到異常處理(3天,第3天)

AI訓練營Python:TASK01_Python基礎入門-從變數到異常處理(3天,第3天)

技術標籤:學習筆記

在這裡插入圖片描述

1. 異常處理定義

異常就是執行期檢測到的錯誤。計算機語言針對可能出現的錯誤定義了異常型別,某種錯誤引發對應的異常時,異常處理程式將被啟動,從而恢復程式的正常執行。

  • 標準異常型別
  • 標準告警型別

2. 常用異常處理語句

2.1. try-except語句

try:
檢測範圍
except Exception[as reason]:
出現異常後的處理程式碼

try 語句按照如下方式工作:

  1. 首先,執行 try 子句(在關鍵字 try 和關鍵字 except 之間的語句)
  2. 如果沒有異常發生,忽略 except 子句, try 子句執行後結束。
  3. 如果在執行 try 子句的過程中發生了異常,那麼 try 子句餘下的部分將被忽略。如果異常的型別和 except 之後的名稱相符,那麼對應的 except 子句將被執行。最後執行 try 語句之後的程式碼。
  4. 如果一個異常沒有與任何的 except 匹配,那麼這個異常將會傳遞給上層的 try 中

2.2. try-except-finally語句

try:
檢測範圍
except Exception[as reason]:
出現異常後的處理程式碼
finally:
無論如何都會被執行的程式碼

不管 try 子句裡面有沒有發生異常, finally 子句都會執行。
如果一個異常在 try 子句裡被丟擲,而又沒有任何的 except 把它截住,那麼這個異常會在 finally 子句執行後被拋
出。

2.3. try-except-else語句

如果在 try 子句執行時沒有發生異常,Python將執行 else 語句後的語句。使用 except 而不帶任何異常型別,這不是一個很好的方式,我們不能通過該程式識別出具體的異常資訊,因為它捕獲所有的異常。

try:
檢測範圍
except(Exception1[, Exception2[,...ExceptionN]]]):
發生以上多個異常中的一個,執行這塊程式碼
else:
如果沒有異常執行這塊程式碼

2.4. raise語句

Python 使用 raise 語句丟擲一個指定的異常。

try:
 raise NameError('HiThere')
except NameError:
print('An exception flew by!')
# An exception flew by!

3. 總結

錯誤型別定以和告警分類,及錯誤資訊定以相關語法的使用,其實就是為了幫助在日常程式碼過程中提前定義些預知的風險問題,而及時調整程式碼執行方向,與其他語言有相似之處。