Python assert调试程序
Python 还提供了 assert 语句,也可以用来调试程序。
assert 条件表达式 [描述信息]
assert 语句的作用是:当条件表达式的值为真时,该语句什么也不做,程序正常运行;反之,若条件表达式的值为假,则 assert 会抛出 AssertionError 异常。其中,[,描述信息] 作为可选参数,用于对条件表达式可能产生的异常进行描述。
例如:
通过运行结果可以看出,当 assert 中条件表达式的值为假时,程序将抛出异常,并附带异常的描述性信息,与此同时,程序立即停止执行。
通常情况下,assert 可以和 try except 异常处理语句配合使用,以前面代码为例:
通过在程序的适当位置,使用 assert 语句判断变量或表达式的值,可以起到调试代码的作用。
当在命令行模式运行 Python 程序时,传入 -O(注意是大写)参数,可以禁用程序中包含的 assert 语句。
assert 条件表达式 [描述信息]
assert 语句的作用是:当条件表达式的值为真时,该语句什么也不做,程序正常运行;反之,若条件表达式的值为假,则 assert 会抛出 AssertionError 异常。其中,[,描述信息] 作为可选参数,用于对条件表达式可能产生的异常进行描述。
例如:
s_age = input("请输入您的年龄:") age = int(s_age) assert 20 < age < 80 , "年龄不在20-80之间" print("您输入的年龄在20和80之间")
程序运行结果为:
请输入您的年龄:20 Traceback (most recent call last): File "E:/workbook/.../测试代码.py", line 13, in <module> assert 20 < age < 80 , "年龄不在20-80之间" AssertionError: 年龄不在20-80之间
通常情况下,assert 可以和 try except 异常处理语句配合使用,以前面代码为例:
try: s_age = input("请输入您的年龄:") age = int(s_age) assert 20 < age < 80 , "年龄不在20-80之间" print("您输入的年龄在20和80之间") except AssertionError as error: print("输入年龄不正确",error)
程序运行结果:
请输入您的年龄:15
输入年龄不正确 年龄不在20-80之间
当在命令行模式运行 Python 程序时,传入 -O(注意是大写)参数,可以禁用程序中包含的 assert 语句。
浙公网安备 33010602011771号