斷言聲明是一種方便的程序調試方式。
1、可將斷言視為debug工具,Python的實現也符合這種設計理念。assert語句的執行依賴于__debug__,且默認值為True。
2、如果__debug__為True,則僅執行assert語句。
實例
assert 可以同時聲明兩個 expression,例如 assert expression1, expression2 等價于
1
2
|
if __debug__: if not expression1: raise AssertionError(expression2) |
如果執行腳本文件時加上-O參數, __debug__則為False。
知識點擴展:
簡單用法是:
assert expression
讓我們用程序來測試這個expression,如果expression相當于False,那么raise一個AssertionError出來。
即邏輯上等同于:
1
2
|
if not expression: raise AssertionError |
簡單看看這些例子:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
>>> assert True >>> assert False Traceback (most recent call last): File "<pyshell#3>" , line 1 , in <module> assert False AssertionError >>> assert 1 = = 1 >>> assert 1 = = 0 Traceback (most recent call last): File "<pyshell#1>" , line 1 , in <module> assert 1 = = 0 AssertionError >>> assert [ 1 , 2 ] # 非空列表值得注意一下,雖說也沒個啥,哈哈 >>> assert not [ 1 , 2 ] Traceback (most recent call last): File "<ipython-input-48-eae410664122>" , line 1 , in <module> assert not [ 1 , 2 ] AssertionError |
到此這篇關于python assert斷言的實例用法的文章就介紹到這了,更多相關python assert斷言的使用內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!
原文鏈接:https://www.py.cn/jishu/jichu/33869.html