Python assert 断言

assert断言语句用来声明某个条件是真的,其作用是测试一个条件(condition)是否成立,如果不成立,则抛出异常。


assert一般用法:

assert condition

如果condition为false,就raise一个AssertionError出来。逻辑上等同于:
if not condition:
    raise AssertionError()



另一种使用方法:

assert condition,expression


如果condition为false,就raise一个描述为 expression 的AssertionError出来。逻辑上等同于:
if not condition:
        raise AssertionError(expression)



assert使用示例:

# -*- coding: utf-8 -*-

v1 = 1
v2 = 2

assert (v1 < v2)
# assert (v1 > v2)
assert (v1 > v2),'{0} is not bigger than {1}'.format(v1,v2)

以上代码抛出异常:

Traceback (most recent call last):
  File "xxx", line 8, in <module>
    assert (v1 > v2),'{0} is not bigger than {1}'.format(v1,v2)
AssertionError: 1 is not bigger than 2

断言跟异常的区别:

断言是用来检查非法情况而不是错误情况的,用来帮开发者快速定位问题的位置。
异常处理用于对程序发生异常情况的处理,增强程序的健壮性和容错性。


对一个函数而言,一般情况下,断言用于检查函数输入的合法性,要求输入满足一定的条件才能继续执行;
在函数执行过程中出现的异常情况使用异常来捕获。


转载于:https://www.cnblogs.com/mtcnn/p/9411757.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值