首页 > 技术文章 > Numpy中判断两个数组是否相等

bravesunforever 2020-04-09 21:58 原文

 

 

#对于二维的数组,数组形状相同时才可以判断,如一个(2,3)的数组和一个(2,2)的数组判断时会报错
a=np.array([[1,2,3],[4,5,6]])
b=np.array([[1,2,5],[4,4,5]])

c=(a==b)
d=c.any()  #只要有一个TRUE,就返回TRUE
e=c.all()   #必须都是True,才返回True,否则返回False

print("\n(a==b)的返回结果:\n",c)
print("\n使用any()函数返回的结果:",d)  
print("使用all()函数返回的结果:",e)

结果;

 

 END

 

 

 

#a是多行一列的数组,b是一行多列的数组,如果b是2行一列的数组,则下面的判断a==b会报错
a=np.array([[1],[2],[3],[3],[1]]) #(5,1)的数组
b=np.array([1,3])   #(1,2)的数组

c=(a==b)
d=c.any()  #只要有一个TRUE,就返回TRUE
e=c.all()   #必须都是True,才返回True,否则返回False

print("\n数组a的形式:\n",a)
print("\n数组b的形式:\n",b)
print("\n(a==b)的返回结果:\n",c)
print("\n使用any()函数返回的结果:",d)
print("使用all()函数返回的结果:",e)

结果:

 

 END

 

推荐阅读