python:对list去重

1、set()方法

numbers = [1,7,3,2,5,6,2,3,4,1,5]
new_numbers = list(set(numbers))
print new_numbers

输出

[1, 2, 3, 4, 5, 6, 7]

特点:不保证原有顺序

2、原始方法

numbers = [1,7,3,2,5,6,2,3,4,1,5]
new_numbers = []
for x in numbers:
    if x not in new_numbers:
       new_numbers.append(x)
print(new_numbers)

特点:直观,原有顺序不变

3、set()方法,保持原有顺序

numbers = [1,7,3,2,5,6,2,3,4,1,5]
new_numbers = list(set(numbers))
new_numbers.sort(key=numbers.index)
print(new_numbers)

特点:将列表转化为集合再转化为列表,利用集合的自动去重功能。简单快速。缺点是:使用set方法无法保证去重后的顺序。
但是,可以通过列表中索引(index)的方法保证去重后的顺序不变。

 

转载于:https://www.cnblogs.com/gcgc/p/11474369.html

已标记关键词 清除标记
表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符 “速评一下”
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页