≡
  • 网络编程
  • 数据库
  • CMS技巧
  • 软件编程
  • PHP笔记
  • JavaScript
  • MySQL
位置:首页 > 网络编程 > Python

Python 三种方法删除列表中重复元素的简单示例

人气:1843 时间:2018-09-28

这篇文章主要为大家详细介绍了Python 三种方法删除列表中重复元素的简单示例,具有一定的参考价值,可以用来参考一下。

对python这个高级语言感兴趣的小伙伴,下面一起跟随四海网的小编两巴掌来看看吧!

方法一:

使用列表对象的sort()方法对列表进行排序,从最后一个元素开始循环迭代列表,判断相邻的两元素是否是否相等!


# @param 三种方法删除列表中重复的元素及效率分析!
# @author 四海网|www.q1010.com 

def methodOne(list):
    list.sort()
    lenList = len(list)
    lastItem = list[lenList-1]
    for i in range(lenList-2,-1,-1):
        if list[i] == lastItem:
            list.remove(list[i])
        else:
            lastItem = list[i]
    return list

# End www_512pic_com

方法二:

定义一个临时列表,循环迭代出的元素如果不在临时表中,则加入,最后返回临时列表!


# @param 三种方法删除列表中重复的元素及效率分析!
# @author 四海网|www.q1010.com 

def methodTwo(list):
    tempList = []
    for i in list:
        if not i in tempList:
            tempList.append(i)
    return tempList

# End www_512pic_com

方法三:


# @param 三种方法删除列表中重复的元素及效率分析!
# @author 四海网|www.q1010.com 

lists=[20,12,34,12,24,34,55,27]
print list(set(lists))

# End www_512pic_com

1、方法一相对方法二来说,有更多的额外操作如:排序、赋值。因为在Python中,变量是不可变的,每迭代出一个元素比较不相等后的操作是都是新建立一个局部变量并赋值而丢弃原变量,这需要消耗更多的内存!同时因为排序操作,破坏了相对位置。

2、方法二建立一个临时列表进行操作,而列表是可变的,每次追加元素都只是在原列表上增加一个索引及值,因而相对方法一来说效率会更高!

3、第三个方法无疑是这三种方法中效率最好的(无论是代码的简洁还是运行效率):set()是内置的数据类型“集合类型”,它是无序的且值是唯一项的!所以set() 执行的结果就是转为集合且直接去除了重复的元素,再list()则将集合又转回列表类型。

但是,set()是会破坏了排列顺序,如果要保留排序,list(set(lists)) 可改为 sorted(set(lists),key=lists.index)

本文来自:http://www.q1010.com/181/1846-0.html

注:关于Python 三种方法删除列表中重复元素的简单示例的内容就先介绍到这里,更多相关文章的可以留意四海网的其他信息。

关键词:删除元素

您可能感兴趣的文章

上一篇:python 图像文字识别PyTesser的简单示例
下一篇:python函数传参机制的简单示例
热门文章
  • Python 处理Cookie的菜鸟教程(一)Cookie库
  • python之pandas取dataframe特定行列的简单示例
  • Python解决json.dumps错误::‘utf8’ codec can‘t decode byte
  • Python通过pythony连接Hive执行Hql的脚本
  • Python 三种方法删除列表中重复元素的简单示例
  • python爬虫代码示例
  • Python 中英文标点转换示例
  • Python 不得不知的开源项目解析
  • Python urlencode编码和url拼接实现方法
  • python按中文拆分中英文混合字符串的简单示例
  • 最新文章
    • Python利用numpy三层神经网络的简单示例
    • pygame可视化幸运大转盘的简单示例
    • Python爬虫之爬取二手房信息的简单示例
    • Python之time库的简单示例
    • OpenCV灰度、高斯模糊、边缘检测的简单示例
    • Python安装Bs4及使用的简单示例
    • django自定义manage.py管理命令的简单示例
    • Python之matplotlib 向任意位置添加一个子图(axes)的简单示例
    • Python图像标签标注软件labelme分析的简单示例
    • python调用摄像头并拍照发邮箱的简单示例

四海网收集整理一些常用的php代码,JS代码,数据库mysql等技术文章。