第一章 1.14 異常捕獲

一. 異常

程序在運行過程當中的報錯就叫異常python



二. 異常捕獲

1. 使用異常捕獲的場景

在知道某個位置可能會出現異常,但開發者沒法控制時使用code

2. 捕獲異常

①:捕獲任何異常開發

"""
try:
    代碼塊一(可能出現異常的代碼)
except:
    代碼塊二(對異常進行處理)
finally:
    代碼塊三
其餘語句
"""
  • 先執行代碼塊1,若是異常,直接執行代碼塊2,依次日後執行;若代碼塊1沒有異常,不執行代碼塊2,日後執行

②:捕獲針對異常class

"""
try:
    代碼塊一(可能出現異常的代碼)
except 異常類型:
    代碼塊二(對異常進行處理)
其餘語句
"""
  • 先執行代碼塊1,若是異常,檢查該異常是否和except後的異常類型是否一致若一致,執行代碼塊2,依次日後執行;若不一致,程序崩潰.

③:捕獲多個異常一(相同處理)程序

"""
try:
    代碼塊一(可能出現異常的代碼)
except (異常類型1, 異常類型2...):
    代碼塊二(對異常進行處理)
其餘語句
"""

④:捕獲多個異常一(不一樣處理)方法

"""
try:
    代碼塊一(可能出現異常的代碼)
except (異常類型1):
    代碼塊二(對異常進行處理)
except (異常類型2):
    代碼塊三(對異常進行處理)
except (異常類型3):
    代碼塊四(對異常進行處理)
    ...  
其餘代碼
"""



三. 關鍵字finally

在以上四個捕獲異常的方法中均可以在最後加上finally關鍵字,它的做用是:無論try中的代碼出現任何狀況,finally後的代碼都會執行異常

try:
    print({'name': 'an', 'age': 29}['gender'])
    print('hello'[19])
    print(max([10, 'asd', True]))
except IndexError:
    print('出現異常')
finally:
    print('寫遺書')
相關文章
相關標籤/搜索