一、python assert的作用:
根據Python 官方文檔解釋(https://docs.python.org/3/reference/simple_stmts.html#assert), "Assert statements are a convenient way to insert debugging assertions into a program".
?
二、一般的用法是:
assert condition
用來讓程序測試這個condition,如果condition為false,那么raise一個AssertionError出來。邏輯上等同于:
if not condition:raise AssertionError()
比如如下的例子:
>>> assert 1==1 >>> assert 1==0 Traceback (most recent call last):File "<pyshell#1>", line 1, in <module>assert 1==0 AssertionError >>> assert True >>> assert False Traceback (most recent call last):File "<pyshell#3>", line 1, in <module>assert False AssertionError >>> assert 3<2 Traceback (most recent call last):File "<pyshell#4>", line 1, in <module>assert 3<2 AssertionError
三、如何為assert斷言語句添加異常參數
assert的異常參數,其實就是在斷言表達式后添加字符串信息,用來解釋斷言并更好的知道是哪里出了問題。格式如下:
assert expression [, arguments]
assert 表達式 [, 參數]
?
比如如下的例子:
>>> assert len(lists) >=5,'列表元素個數小于5'
Traceback (most recent call last):
File "D:/Data/Python/helloworld/helloworld.py", line 1, in <module>
assert 2>=5,'列表元素個數小于5'
AssertionError: 列表元素個數小于5
>>>?assert 2==1,'2不等于1'
Traceback (most recent call last):
File "D:/Data/Python/helloworld/helloworld.py", line 1, in <module>
assert 2==1,'2不等于1'
AssertionError: 2不等于1
--------------------------------------------------------------------
參考鏈接:
https://www.cnblogs.com/liuchunxiao83/p/5298016.html
https://www.cnblogs.com/cedrelaliu/p/5948567.html