Python assert
assert是断言的意思,解释为:我断定这个程序执行之后或者之前会有这样的结果,如果不是,那就扔出一个错误。
语法:
assert expression [, arguments]
assert 表达式 [, 参数]
举例:
def foo(s):
n = int(s)
assert n != 0, 'n is zero!'
return 10 / n
def main():
foo('0')
>Traceback (most recent call last):
...
AssertionError: n is zero!
assert的意思是,表达式n != 0应该是True,否则,根据程序运行的逻辑,后面的代码肯定会出错。
如果断言失败,assert语句本身就会抛出AssertionError:
启动Python解释器时可以用-O
参数来关闭assert