• python 列表去重(数组)的几种方法


    一、方法1

     代码如下 复制代码

    ids = [1,2,3,3,4,2,3,4,5,6,1]
    news_ids = []
    for id in ids:
        if id not in news_ids:
            news_ids.append(id)
    print news_ids

    思路看起来比较清晰简单 ,也可以保持之前的排列顺序。

    二、方法2

    通过set方法进行处理

     代码如下 复制代码

    ids = [1,4,3,3,4,2,3,4,5,6,1]
    ids = list(set(ids))

    处理起来比较简单,使用了集合方法set进行处理,不过结果不会保留之前的顺序。

    三、方法3

    利用lambda匿名函数和 reduce 函数处理

     代码如下 复制代码
    ids = [1,4,3,3,4,2,3,4,5,6,1]
    func = lambda x,y:x if y in x else x + [y]
    reduce(func, [[], ] + ids)

    四、方法4

    使用itertools模块

     代码如下 复制代码

    import itertools
    ids = [1,4,3,3,4,2,3,4,5,6,1]
    ids.sort()
    it = itertools.groupby(ids)
    for k, g in it:
        print k

    五、无法保持原有顺序

     代码如下 复制代码

    liebiao=set(liebiao)

    六、while遍历去重

     代码如下 复制代码

    def delRepeat(liebiao):
     for x in liebiao:
      while liebiao.count(x)>1:
       del liebiao[liebiao.index(x)]
     return liebiao

  • 相关阅读:
    我的游戏开发工作生涯要开始了
    关于碰撞检测和物理引擎
    关于havok
    认识多渲染目标(Multiple Render Targets)技术
    无限分级的tree
    运用ThreadLocal解决jdbc事务管理
    盒子模型 计算
    监听域对象
    爱恨原则 就近原则 (LVHA)
    java database connection
  • 原文地址:https://www.cnblogs.com/zknublx/p/6042295.html
Copyright © 2020-2023  润新知