Python assert断言函数及用法

assert 断言语句和 if 分支有点类似,它用于对一个 bool 表达式进行断言,如果该 bool 表达式为 True,该程序可以继续向下执行;否则程序会引发 AssertionError 错误。

有读者可能会问,明明 assert 会令程序崩溃,为什么还要使用它呢?这是因为,与其让程序在晚些时候崩溃,不如在错误条件出现时,就直接让程序崩溃。通常,assert 语句用在检查函数参数的属性(是参数是否是按照设想的要求传入),或者作为初期测试和调试过程中的辅助工具。

例如如下程序:

s_age = input("请输入您的年龄:")
age = int(s_age)
assert 20 < age < 80
print("您输入的年龄在20和80之间")

上面程序中,使用 asser 语句断言 age 必须位于 20 到 80 之间。运行上面程序,如果输入的 age 处于执行范围之内,则可看到如下运行过程:

请输入您的年龄:23
您输入的年龄在20和80之间

如果输入的 age 不处于 20 到 80 之间,将可以看到如下运行过程:

请输入您的年龄:1
Traceback (most recent call last):
  File "C:\Users\mengma\Desktop\1.py", line 3, in <module>
    assert 20 < age < 80
AssertionError

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

assert 断言的执行逻辑是:

if 表达式的值为 True:
    程序继续运行;
else:     # 表示式的值为 False
    程序引发 AssertionError 错误

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值