python-assert断言函数用法

0.摘要

本文介绍了assert的用法,以及使用assert判断两连个array数组是否相等。

1.断言函数作用

断言函数是对表达式布尔值的判断,要求表达式计算值必须为真。可用于自动调试。

如果表达式为假,触发异常;如果表达式为真,不执行任何操作。


2.断言函数

函数形式:

assert(condition)
if not condition:
    raise AssertionError()

函数举例:

下面的程序中,assert()中表达式都为真,故程序正常执行,不会报错,也不会有输出。

assert(1 == 1)
assert(5 > 1)
a = "hello"
b = "hello"
assert(a == b)

当我们将condition设置为1 >  100 时,这个条件为假,这时候程序便会报错:

assert(1 > 100)

3.使用assert判断数组是否相等

当我们的数组是list类型的时候,可直接进行比较。如下我们使用assert(a==b)判断a,b是否相等,可以顺利通过:

a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
b = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
assert(a == b)

但当a,b为numpy.array类型时,需要采用下列方式:

import numpy as np
a = np.arange(10)
b = np.arange(10)
assert(a.all() == b.all())

具体原因和numpy.array.all()使用方法详见:https://blog.csdn.net/qq_17753903/article/details/82707734

猜你喜欢

转载自blog.csdn.net/qq_17753903/article/details/82707014