zoukankan      html  css  js  c++  java
  • Python【每日一问】02

    问:列表 test = [1,2,3,1,3,4,5,67,7,8,54,1,2,3,4,5,6],如何删除该列表的重复元素?

    方法1:利用集合的不重复性

    # 利用集合的不重复性
    
    test = [1,2,3,1,3,4,5,67,7,8,54,1,2,3,4,5,6]
    
    # 将 列表 转换成 集合,再将集合 转换成 列表
    
    test1 = list(set(test))
    
    
    print(test1)

    如果要保持列表的原有顺序,可以使用 sort 方法:

    # 利用集合的不重复性
    
    test = [1,2,3,1,3,4,5,67,7,8,54,1,2,3,4,5,6]
    
    # 去重
    
    test1 = list(set(test))
    
    # 按照原有顺序排列
    
    test1.sort(key = test.index)
    
    print(test1)

    方法2:利用 numpy 模块的 unique 函数

    # 引入 numpy 模块
    
    from numpy import *
    
    test = [1,2,3,1,3,4,5,67,7,8,54,1,2,3,4,5,6]
    
    test = numpy.unique(test)
    
    print(test)

    方法3:先排序然后去重

    test = [1,2,3,1,3,4,5,67,7,8,54,1,2,3,4,5,6]
    test_RemoveDuplicates = sorted(test)
    last_num = test_RemoveDuplicates[-1] # 当前列表最后一个元素
    for i in range(len(test_RemoveDuplicates)-2,-1,-1):
        if last_num == test_RemoveDuplicates[i]: # 判断当前列表倒数第二个元素跟最后一个元素是否相等
            del test_RemoveDuplicates[i] # 如果相等,就删除重复元素
        else:
            last_num = test_RemoveDuplicates[i]
    
    print(test_RemoveDuplicates)
  • 相关阅读:
    HashMap深度解析(二)(转)
    HashMap深度解析(一)(转)
    GeoHash核心原理解析(转)
    spring boot 策略模式实践
    Java中CAS详解(转)
    springMVC请求流程详解(转)
    7 vi 编辑器
    Linux 命令行快捷键
    Java
    3 Eclipse 查看不了源码
  • 原文地址:https://www.cnblogs.com/ElegantSmile/p/10694602.html
Copyright © 2011-2022 走看看