我无法从 numpy.array_equal 获得正确的输出。恒等数组是使用 np.eye(size) 创建的,而我与之比较的
result_ab
数组是使用 np.array([]) 构建的。
我不断得到与预期相反的结果。我已经用整数和浮点数组进行了测试,当它应该返回 True 时却不断得到 False。
def identity_check(result_ab, rows):
size = result_ab.shape[0]
identity = np.eye(size)
print(identity)
if np.array_equal(result_ab, identity) == True:
print('Inverse!')
else:
print('Not inverse.')
# Test case values
result_ab = np.array([[1, 0],
[0, 1]])
rows = 2
我已经使用 allclose 和 array_equiv 进行了测试,但我认为这些方法不是正确的方法(它们也往往会失败或给出误报)。我还打印了
result_ab
和 identity
数组的类型,并且它返回了 <class 'numpy.ndarray'>
。