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