91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python進階之路 3.4.5 斷言

發布時間:2020-06-07 14:57:11 來源:網絡 閱讀:167 作者:Python進階 欄目:編程語言

3.4.5 斷言

斷言(assertions)的使用方式類似于if語句,只是在不滿足條件時,會直接拋出異常。類似于下面的if語句(偽代碼)

if not condition:       #如果不滿足條件,會直接拋出異常,程序會中斷
    crash program

那么究竟為什么需要這樣的代碼呢?主要原因為需要檢測程序在某個地方是否滿足條件,如果不滿足條件,應該及時通知開發人員,而不是將這些bug隱藏起來,知道關鍵的時候在崩潰。

其實在TDD中經常使用斷言,TDD會在程序發現異常時執行斷言,并拋出異常。

在Python語言中,斷言需要使用assert語句,在assert關鍵字的后面指定斷言的條件表達式。如果條件表達式的值是False,那么就會拋出異常。而且斷言后面的語句都不會執行,相當于程序的一個斷點。

>>> value = 20
>>> assert value < 10 or value > 30     #條件不滿足,會拋出異常
>> assert value < 30        #條件滿足,會正常執行后面的語句

可以看到,value變量的值是20,而assert后面的條件是“value < 10 or value > 30”,很明顯,條件不滿足,所以在斷言出會拋出異常。而后面的斷言,條件是“value < 30”,這個條件是滿足的,所以在斷言后面的語句都會正常執行。

當斷言條件不滿足時拋出異常,在默認情況下,只顯示了拋出異常的位置,并沒有顯示拋出異常的原因,所以為了異常信息更明確,可以為assert語句指定異常描述。

>>> value = 20
>>> assert value < 10 or value > 30,'value值必須在10~20'    #為斷言指定異常描述信息

[例 3.6] 本例演示了斷言的用法。

name = "Bill"       #定義變量name
assert name == "Bill"       #斷言條件表達式的值是True,繼續執行下面的語句

age = 20        #定義變量age
#斷言條件表達式的值是False,拋出異常,后面的代碼不會被執行
assert 0 < age < 10, '年齡必須小于10歲'

print("hello world")        #這行代碼不會被執行
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

东至县| 富顺县| 营山县| 陇西县| 台北市| 谢通门县| 延安市| 鄂尔多斯市| 平乡县| 自治县| 南江县| 应用必备| 浏阳市| 湄潭县| 太仓市| 枣阳市| 吴川市| 普陀区| 舞钢市| 祁阳县| 临桂县| 柳江县| 海阳市| 涞源县| 措美县| 台山市| 集安市| 德安县| 谷城县| 平山县| 尚志市| 区。| 佛学| 敦煌市| 即墨市| 永吉县| 道孚县| 中阳县| 叶城县| 云和县| 丘北县|