python如何判断两个数组完全相等?
在写代码时想判断两个矩阵是否完全相同(每个元素都相同),于是我这样写了:
import numpy as np
a = np.array ([[1,2,3],[3,6,8]])
b = np.array ([[2,2,3],[1,3,8]])
c= np. array ([[1,2,3],[3,6,8]])
print(a==b)
输出:
[[False True True]
[False False True]]
import numpy as np
a = np.array ([[1,2,3],[3,6,8]])
b = np.array ([[2,2,3],[1,3,8]])
c= np. array ([[1,2,3],[3,6,8]])
print(a==c)
输出:
[[ True True True]
[ True True True]]
发现用==判断只能返回一个判断矩阵,表示其中每一个元素是否对应相等。
应该这么写:
''' 学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025 寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书! '''
import numpy as np
a = np.array ([[1,2,3],[3,6,8]])
b = np.array ([[2,2,3],[1,3,8]])
c= np. array ([[1,2,3],[3,6,8]])
print((a==b).all())
print((a==c).all())
输出:
False
True
如果两个矩阵中的所有元素对应相等,则返回True,反之返回False。
如果判断两个矩阵中是否有相等的元素,有任何一个相等就行,这种情况就可以用.any(),如下:
import numpy as np
a = np.array ([[1,2,3],[3,6,8]])
b = np.array ([[2,2,3],[1,3,8]])
c= np. array ([[1,2,3],[3,6,8]])
print((a==b).any())
print((a==c).any())
输出:
True
True
还没有评论,来说两句吧...