使用python怎么判断数组中的元素是否相同?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
目前创新互联已为近1000家的企业提供了网站建设、域名、雅安服务器托管、网站改版维护、企业网站设计、新密网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。使用np.unique()的方法,代码如下:
import numpy as np class Debug: @staticmethod def isAllElementSame(): x1 = np.array([[1, 2, 3], [3, 4, 5], [6, 7, 8]]) x2 = np.array([[81., 162., 243., ], [243., 324., 405.], [486., 567., 648.]]) print('The result if x2/x1 is:') print(x2 / x1) print('Judge whether all elements in array are same or not') print(len(np.unique(x2 / x1)) == 1) if __name__ == '__main__': debug = Debug() debug.isAllElementSame() """ The result if x2/x1 is: [[81. 81. 81.] [81. 81. 81.] [81. 81. 81.]] Judge whether all elements in array are same or not True """
可以看到,当输出为True的时候,表明数组中的所有元素的值均一致,反之,当为False的时候,数组中存在不一样的元素值。
如果数组中的元素是复数呢?
import numpy as np class Debug: @staticmethod def isAllElementSame(): x1 = np.array([complex(1, 2), complex(2, 4)]) x2 = np.array([complex(2, 4), complex(4, 8)]) print('The result if x2/x1 is:') print(x2 / x1) print('Judge whether all elements in array are same or not') print(len(np.unique(x2 / x1)) == 1) if __name__ == '__main__': debug = Debug() debug.isAllElementSame() """ The result if x2/x1 is: [2.+0.j 2.+0.j] Judge whether all elements in array are same or not True """
可以看到,当数组元素为复数时,该方法仍然适用。然而当数组元素为小数时,可能会失效,如果失效,加上np.round()函数并设定所需要保留的有效位小数即可,例如:print(len(np.unique(np.round(x2 / x1))) == 1)。
看完上述内容,你们掌握使用python怎么判断数组中的元素是否相同的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!