assert语句

Python assert语句, 又称断言语句, 可以看做是功能缩小版的if语句, 它用于判断某个表达式的值, 如果值为真, 则程序继续往下执行; 反之, Python解释器会报AssertionError错误.

assert expression

明明assert会令程序崩溃, 为什么还要使用它呢? 这是因为, 与其让程序在晚些时候崩溃, 不如在错误条件出现时就直接让程序崩溃, 这样有利于对程序排错, 提高程序的健壮性. 因此, assert语句通常用于检查用户的输入是否符合规定, 还经常用作程序初期测试和调试过程中的辅助工具.

关闭assert检查

assert检查是可以被关闭的, 比如在命令行模式下运行Python程序时, 加入-O选项就可以使程序中的assert失效. 一旦assert失效, 其包含的语句也就不会被执行.

合理使用assert

使用assert可以有效预防程序漏洞, 提高程序的健壮性. 但是, 不能滥用assert, 很多情况下, 程序中出现不同情况都是意料之中的, 需要使用不同的方案去处理, 有时候使用分支语句进行判断更为合适, 而对于程序中可能出现的一些异常, 要记得使用try except语句处理.