• 列表去重


    开发中对数组、列表去重是非常常见的需求,对一个list中的id进行去重,有下面几种方法,前面两种方法不能保证顺序,后面两种方法可以保持原来的顺序。
    下面的代码都在Python3下测试通过,Python2下请自行测试
      1.使用set的特型,python的set和其他语言类似,是一个无序不重复元素集
    orgList=[1,0,3,7,7,5]
    #list()方法是把字符串str或元组转成数组
    formatList=list(set(orgList))
    print(formatList)
    结果:
    [0,1,3,5,7]
    2.使用keys()方法
    orgList=[1,0,3,7,7,5]
    #list()方法是把字符串str或元组转成数组
    formatList=list({}.fromkeys(orgList).keys())
    print(formatList)
    结果:
    [0,1,3,5,7]
    上面两种方法的问题是:结果是没有保持原来的顺序。
    3.循环遍历法
    orgList=[1,0,3,7,7,5]
    formatList=[]
    foridinorgList:
    ifidnotinformatList:
    formatList.append(id)
    print(formatList)
    结果:
    [1,0,3,7,5]
    but,这样的代码不够简洁,不够高端
    4.按照索引再次排序
    orgList=[1,0,3,7,7,5]
    formatList=list(set(orgList))
    formatList.sort(key=orgList.index)
    print(formatList)
    结果:
    [1,0,3,7,5]
  • 相关阅读:
    iOS RunTime
    js本地对象的操作
    js面向对象实现切换面板
    css3上下翻页效果
    Normalize.css用法
    javasript深度拷贝
    div中div水平垂直居中
    正则表达式匹配括号内网址
    ajax聊天
    移动端px转rem的两种方法
  • 原文地址:https://www.cnblogs.com/xingkongzhizhu/p/12321994.html
Copyright © 2020-2023  润新知