python中集合set与列表的最大区别在于:
1.集合中数据是唯一的
2.集合中数据的排列是无序的
在使用集合时,经常会出现没注意到第二点的状况,例如:生成一个列表,检查其中是否有重复的数据,有同学可能会这样写导致报错:
list_1 = [1,1,2,3,4,5] set_1 = set(list_1) list_2 = list(set_1) #比较两列表是否相等 if list_1 == list_2:
原因就在于集合生成时是无序的,所以此时list_2中数据的顺序与list_1不同,从而不能判断成功
想解决这个问题也很简单,只需要用长度来判断即可
if len(list_1) == len(list_2):
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)