1. 程式人生 > 程式設計 >python 錯誤處理 assert詳解

python 錯誤處理 assert詳解

assert是斷言的意思,解釋為:我斷定這個程式執行之後或者之前會有這樣的結果,如果不是,那就扔出一個錯誤。

語法:

assert expression [,arguments]
assert 表示式 [,引數]

舉例:

def foo(s):
 n = int(s)
 assert n != 0,'n is zero!'
 return 10 / n

def main():
 foo('0')

>Traceback (most recent call last):
 ...
AssertionError: n is zero!

assert的意思是,表示式n != 0應該是True,否則,根據程式執行的邏輯,後面的程式碼肯定會出錯。

如果斷言失敗,assert語句本身就會丟擲AssertionError:

啟動Python直譯器時可以用-O引數來關閉assert

補充知識:python中assertion異常

python中的assert是一種最簡單的異常機制

assert的基本語法是:

"assert" expression1 ["," expression2]

expression1用於判斷生成布林值,當expression1為假的時候,則丟擲異常,[]中的內容可選,即使用者可以選擇異常的提示值:

>>>a=23
>>>assert a==23
>>>a=a-1
>>>assert a==23
Traceback (most recent call last):
 File "<stdin>",line 1,in <module>
AssertionError
>>>assert a==23,"error1"
Traceback (most recent call last):
 File "<stdin>",in <module>
AssertionError: error1

以上這篇python 錯誤處理 assert詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。