1
Python编程从入门到实践
1.11.2.2 7.2.2 断言
7.2.2 断言

使用assert(断言)是学习Python一个非常好的习惯。assert用于判断一个表达式,如果断言成功,不采取任何措施,否则,触发AssertionError的异常。通常,assert语句用于检查函数参数的属性(参数是否是按照设想的要求传入),或者作为初期测试和调试过程中的辅助工具。

代码格式如下:

assert expression[,arguments]

其中,assert是断言的关键字。如果expression的值为假,就会触发AssertionError异常,该异常可以被捕获并处理;如果expression的值为真,则不采取任何措施。

【例7.12】会产生异常的断言:

assert 3==6

assert len[a,b,c,d])>5

【例7.13】包含断言的程序:

例7.13中,使用assert语句断言age必须处于19~45之间。运行上面程序,如果输入的age处于执行范围之内,则可看到如图7-10所示运行过程。

图7-10 运行过程

如果输入的age不处于19~45之间,将可以看到图7-11所示的运行过程。

从上面的运行过程可以看出,断言也可以对逻辑表达式进行判断,因此实际上断言也相当于一种特殊的分支。

assert的执行逻辑是:

图7-11 运行过程