1. 定義:Assert statements are a convenient way to insert debugging assertions into a program
2.依賴於__debug__變量,默認值為True 當不滿足條件返回False
3.使用場景:檢查先驗條件時使用斷言,檢查后驗條件時使用異常
例如 讀取文件場景,判斷文件格式使用斷言,判斷文件是否存在使用異常,因為存在后續邏輯處理。
def read_file(path):
#判斷是否為str類型,先驗條件
assert isinstance(path,str)
#判斷是否存在 后驗條件 邏輯判斷
if not os.path.exists(path):
raise FileNotFoundError()
例如 檢查參數是否合理場景 當我們已知參數是可列舉的指定列表時,使用斷言防止參數傳遞錯誤
assert spider in ["bigfile", "dynamic"]
assert proxy_type in [None, "normal", "cross"]