Python assert斷言異常語句格式及用法
阿新 • • 發佈:2019-02-17
使用assert斷言是學習python一個非常好的習慣,assert斷言句語格式及用法很簡單。在沒完善一個程式之前,我們不知道程式在哪裡會出錯,與其讓它在執行最崩潰,不如在出現錯誤條件時就崩潰,這時候就需要assert斷言的幫助。本文主要是講assert斷言的基礎知識。
assert斷言的作用
assert斷言是宣告其布林值必須為真的判定,如果發生異常就說明表達示為假。可以理解assert斷言語句為raise-if-not,用來測試表示式,其返回值為假,就會觸發異常。
assert斷言語句的語法格式
assert expression
assert 表示式
下面做一些assert用法的語句供參考:
assert 1==1
assert 2+2==2*2
assert len(['my boy',12])<10
assert range(4)==[0,1,2,3]
如何為assert斷言語句新增異常引數
assert的異常引數,其實就是在斷言表示式後新增字串資訊,用來解釋斷言並更好的知道是哪裡出了問題。格式如下:
assert expression [, arguments]
assert 表示式 [, 引數]
使用斷言的最佳時機偶爾會被提起,通常是因為有人誤用,因此我覺得有必要寫一篇文章來闡述一下什麼時候應該用斷言,為什麼應該用,什麼時候不該用。
對那些沒有意識到用斷言的最佳時機的人來說,Python的斷言就是檢測一個條件,如果條件為真,它什麼都不做;反之它觸發一個帶可選錯誤資訊的AssertionError。如下例所示:
1 |
py>
x = 23 |
2 |
py> assert x
> 0 , "x
is not zero or negative" |
3 |
py> assert x % 2 = = 0 , "x
is not an even number" |
4 |
Traceback
(most recent call last): |
5 |
File "<stdin>" ,
line 1 , in <module> |
6 |
AssertionError:
x is not an
even number |