異常,在程序運行時出現非正常狀況時會被拋出,好比常見的名稱錯誤、鍵錯誤等。python
異常:spa
>>> s Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 's' is not defined >>>
斷言,判斷某個表達式的真假,真則程序繼續執行,不然拋出 AssertionError 異常。code
斷言:對象
>>> assert 3 < 2 Traceback (most recent call last): File "<stdin>", line 1, in <module> AssertionError >>>
斷言可以幫助別人或將來的你理解代碼,找出程序中邏輯不對的地方。一方面,斷言會提醒你某個對象應該處於何種狀態,另外一方面,若是某個時候斷言爲假,會拋出 AssertionError 異常,頗有可能終止程序。blog