ITPub博客

首页 > IT职业 > IT职场 > python的list如何去重

python的list如何去重

IT职场 作者:disable 时间:2021-09-11 10:33:55 0 删除 编辑

要去除python列表中的重复元素,有很多方法

直观方法

先建立一个新的空列表,再遍历原来的列表,利用逻辑关系not in 来去重。

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)

此方法过程复杂,但是保证了列表的顺序性。

使用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)

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/200/viewspace-2836718/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: python3.4支持xp么
请登录后发表评论 登录
全部评论

注册时间:2018-09-12

  • 博文量
    86
  • 访问量
    16279