python去除列表中重复元素

版权声明:本文为博主原创文章,转载请附上博文链接! https://blog.csdn.net/coco_link/article/details/88351315

速度快,但排序变化

# set函数
L = ['b','c','d','b','c','a','a'] 
set(L)
Out[21]: {'a', 'b', 'c', 'd'}

list(set(L))
Out[22]: ['a', 'c', 'b', 'd']

{}.fromkeys(l1).keys() 
Out[23]: ['a', 'c', 'b', 'd']

保持原有排序

# list 的 sort 方法
l1 = ['b','c','d','b','c','a','a'] 
l2 = list(set(l1)) 
l2.sort(key=l1.index) 
print l2
Out[28]: ['b', 'c', 'd', 'a']

l1 = ['b','c','d','b','c','a','a'] 
sorted(set(l1),key=l1.index) 
Out[31]: ['b', 'c', 'd', 'a']

遍历

l1 = ['b','c','d','b','c','a','a'] 
l2 = [] 
for i in l1: 
if not i in l2: 
        l2.append(i) 
print l2
l1 = ['b','c','d','b','c','a','a'] 
l2 = [] 
[l2.append(i) for i in l1 if not i in l2] 
print l2

猜你喜欢

转载自blog.csdn.net/coco_link/article/details/88351315