Python assert斷言函式及用法

duanhao發表於2021-09-11

Python assert斷言函式及用法

斷言語句和 if 分支有點類似,它用於對一個 bool 表示式進行斷言,如果該 bool 表示式為 True,該程式可以繼續向下執行;否則程式會引發 AssertionError 錯誤。

例如如下程式:

s_age = input("請輸入您的年齡:")
age = int(s_age)
assert 20 < age < 80
print("您輸入的年齡在20和80之間")

上面程式中粗體字程式碼斷言 age 必須位於 20 到 80 之間。執行上面程式,如果輸入的 age 處於執行範圍之內,則可看到如下執行過程:

請輸入您的年齡:23
您輸入的年齡在20和80之間

如果輸入的 age 不處於 20 到 80 之間,將可以看到如下執行過程:

請輸入您的年齡:1
Traceback (most recent call last):
  File "C:UsersmengmaDesktop1.py", line 3, in <module>
    assert 20 < age < 80
AssertionError

從上面的執行過程可以看出,斷言也可以對邏輯表示式進行判斷,因此實際上斷言也相當於一種特殊的分支。

assert 斷言的執行邏輯是:

if 條件為False:
    程式引發AssertionError錯誤


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1343/viewspace-2837378/,如需轉載,請註明出處,否則將追究法律責任。

相關文章