Python实现对列表中重复元素进行去重的方法小结

1、运用新建字典的方式,去除重复的键

list=['3073760388_159001185200041170','8757004266978667','8757004266190263','3073191454_279001185200170033','8757004266978667','3073760388_159001185200041170']
dic = {}
dic2=dic.fromkeys(list)
list = dic.fromkeys(list).keys()#字典在创建新的字典时,有重复key则覆盖,value 为字典所有键对应的初始值。不写所有的key值所对应的value值均为None,写了则为默认的值
print(list)
print(dic2)

#fromkeys 方法只用来创建新字典,不负责保存。当通过一个字典来调用 fromkeys 方法时,如果需要后续使用一定记得给他复制给其他的变量。

2、利用集合,直接将列表转化为集合,自动去重后转回列表。有一个问题,转换为集合的同时,数据无序了。

 li = [11,22,22,33,44,44]
 set = set(li)
 li = list(set)
 print(li)

3、用列表的推导式

the_list=['3073760388_159001185200041170','8757004266978667','8757004266190263','3073191454_279001185200170033','8757004266978667','3073760388_159001185200041170']
lis = []
[lis.append(i)  for i in the_list if not i  in lis]
print(lis)
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。