【python3学习笔记】assert 关键字

一、定义

1.1 语法格式

assert expression # 表达式是布尔值,即True或者False

等价于

if not expression:
    raise AssertionError

1.2 assert后可跟参数,可以作为出错信息的描述

assert expression[,assert_error_msg]

等价于

if not expression:
    raise AssertionError(assert_error_msg)

二、作用

  • 关键字assert可以构成断言语句。它的作用在于当我们在构建一个新的程序模块时,可以使用它帮我们锁定bug范围,有利于debug。

2.1 使用情形

  • 在建立一个新的程序模块时,如果存在一个关键表达式,那么我们可以用assert关键字 测试其运行后的结果 是否符合我们的预期。
  • 因此在改关键表达式处设立测试节点,便于我们修正程序中可能存在的bug。

三、示例

3.1 assert后面无参数

a = 1
b = 2
assert a == b

# 输出,可以帮助我们锁定出错的位置,有利于debug
Traceback (most recent call last):
  File "D:/source code/SRFBN_CVPR19/reference/assert.py", line 8, in <module>
    assert a == b
AssertionError

3.2 assert后跟参数

A = 1
B = 2
assert A == B, 'A is not equal to B!!'

# 输出
Traceback (most recent call last):
  File "D:/source code/SRFBN_CVPR19/reference/assert.py", line 8, in <module>
    assert A == B, 'A is not equal to B!!'
AssertionError: A is not equal to B!!

3.3 表达式为True

assert True, '断言失败,返回错误'
print('断言成功,执行接下来的代码')

# 表达式为True,断言后面的参数不会输出,只是会输出打印语句的结果
断言成功,执行接下来的代码

3.4 表达式为False

assert False, '断言失败,返回错误'
print('断言成功,执行接下来的代码')

# 表达式为False,输出错误信息,不会执行打印语句
Traceback (most recent call last):
  File "D:/source code/SRFBN_CVPR19/reference/assert.py", line 9, in <module>
    assert False, '断言失败,返回错误'
AssertionError: 断言失败,返回错误
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值