从文档中不清楚numpy.all_close是否检查形状。
答案 0 :(得分:1)
allclose
的代码是:
def allclose(a, b, rtol=1.e-5, atol=1.e-8):
# doc...
x = array(a, copy=False, ndmin=1)
y = array(b, copy=False, ndmin=1)
# special handling of 'inf'...
with errstate(invalid='ignore'):
r = all(less_equal(abs(x-y), atol + rtol * abs(y)))
return r
请注意,它确保输入是数组(至少有1个暗淡)。这就是它适用于嵌套列表的原因。
其次,核心行动是x-y
。它检查所有术语的绝对差异是否很小。因此,如果它可以广播数组来进行数学运算,它可以比较数组。这是发布广播ValueError
的减法。