2024-06-17 09:06:54 发布
网友
Possible Duplicate:How do you remove duplicates from a list in Python whilst preserving order?
让我们考虑一下清单:
x = ['a', 'b', 'c', 'c', 'a', 'd', 'z', 'z']
我想删除这些重复的值list-x,结果如下:
y = ['a', 'b', 'c', 'd', 'z']
你也可以用
y=[ x[i] for i in range(len(x)) if not x[i] in x[:i]]
我认为这是最简单的解决办法。
如果排序无关紧要,请使用集合:
>>> list(set(['a', 'b', 'c', 'c', 'a', 'd', 'p', 'p'])) ['a', 'p', 'c', 'b', 'd']
如果排序确实重要,请使用OrderedDict:
>>> from collections import OrderedDict >>> OrderedDict.fromkeys(['a', 'b', 'c', 'c', 'a', 'd', 'p', 'p']).keys() ['a', 'b', 'c', 'd', 'p']
由于没有任何关于维护秩序的规定,这种方法将起作用:
x = ['a', 'b', 'c', 'c', 'a', 'd', 'z', 'z'] list(set(x))
会给你
['a', 'c', 'b', 'd', 'z']
通过将列表更改为set,可以消除所有重复项。应用list()将不重复的数据更改回列表。
set
list()
你也可以用
我认为这是最简单的解决办法。
如果排序无关紧要,请使用集合:
如果排序确实重要,请使用OrderedDict:
由于没有任何关于维护秩序的规定,这种方法将起作用:
会给你
通过将列表更改为
set
,可以消除所有重复项。应用list()
将不重复的数据更改回列表。相关问题 更多 >
编程相关推荐