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

2020-06-11  本文已影响0人  烂笔头2020

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)
上一篇下一篇

猜你喜欢

热点阅读