要去除python列表中的重复元素,有很多方法
直观方法
先建立一个新的空列表,再遍历原来的列表,利用逻辑关系not in 来去重。
<a href="https://www.gaodaima.com/tag/numbers" title="查看更多关于numbers的文章" target="_blank">numbers</a> = [1,7,3,2,5,6,2,3,4,1,5] <a href="https://www.gaodaima.com/tag/new" title="查看更多关于new的文章" target="_blank">new</a>_numbers = [] for x in numbers: if x not in new_numbers: new_numbers.append(x) print(new_numbers)
www#gaodaima.com来源gaodai#ma#com搞@代~码网搞代码
此方法过程复杂,但是保证了列表的顺序性。
使用set()的自动去重功能
numbers = [1,7,3,2,5,6,2,3,4,1,5] new_numbers = list(set(numbers)) print(new_numbers)
此方法将列表转化为集合再转化为列表,利用集合的自动去重功能。简单快速。缺点是:使用set方法无法保证去重后的顺序。
但是,可以通过列表中索引(index)的方法保证去重后的顺序不变。
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)
来源:搞代码网:原文地址:https://www.gaodaima.com