assert语句¶
Python assert语句, 又称断言语句, 可以看做是功能缩小版的if语句,
它用于判断某个表达式的值, 如果值为真, 则程序继续往下执行;
反之, Python解释器会报AssertionError错误.
assert expression
明明assert会令程序崩溃, 为什么还要使用它呢?
这是因为, 与其让程序在晚些时候崩溃, 不如在错误条件出现时就直接让程序崩溃, 这样有利于对程序排错, 提高程序的健壮性.
因此, assert语句通常用于检查用户的输入是否符合规定, 还经常用作程序初期测试和调试过程中的辅助工具.
关闭assert检查¶
assert检查是可以被关闭的, 比如在命令行模式下运行Python程序时, 加入-O选项就可以使程序中的assert失效.
一旦assert失效, 其包含的语句也就不会被执行.
合理使用assert¶
使用assert可以有效预防程序漏洞, 提高程序的健壮性.
但是, 不能滥用assert, 很多情况下, 程序中出现不同情况都是意料之中的, 需要使用不同的方案去处理,
有时候使用分支语句进行判断更为合适, 而对于程序中可能出现的一些异常, 要记得使用try except语句处理.