目录
1. 一维List
1、遍历
先建立一个新的空列表,通过遍历原来的列表,再利用逻辑关系not in 来去重。
这样可以做出来,但是过程不够简单。不过此方法保证了列表的顺序性。
li=[1,2,3,4,5,1,2,3]
new_li=[]
for i in li:
if i not in new_li:
new_li.append(i)
print(new_li)
2、利用set
将列表转化为集合再转化为列表,利用集合的自动去重功能。简单快速。缺点是:使用set方法无法保证去重后的顺序。
li=[1,2,3,4,5,1,2,3]
li=list(set(li))
print(li)
3、利用set+索引
可以通过列表中索引(index)的方法保证去重后的顺序不变。
li=[1,2,3,4,5,1,2,3]
new_li=list(set(li))
new_li.sort(key=li.index)
print(new_li)
4、使用keys()
但是结果不能保持原来的顺序
li = [1,0,3,7,7,5]
formatList = list({}.fromkeys(li).keys())
print (formatList)

本文介绍了Python处理一维和二维List数据去重的多种方法,包括利用set、索引、keys()以及itertools.grouby。对于一维List,set方法虽然快速但不保证顺序,而结合索引可以保留顺序。对于二维List,需要先将元素转化为tuple才能进行去重操作。


被折叠的 条评论
为什么被折叠?



