Python去除列表中重复元素的方法


Posted in Python onMarch 20, 2015

本文实例讲述了Python去除列表中重复元素的方法。分享给大家供大家参考。具体如下:

比较容易记忆的是用内置的set

l1 = ['b','c','d','b','c','a','a']
l2 = list(set(l1))
print l2

还有一种据说速度更快的,没测试过两者的速度差别

l1 = ['b','c','d','b','c','a','a']
l2 = {}.fromkeys(l1).keys()
print l2

这两种都有个缺点,祛除重复元素后排序变了:

['a', 'c', 'b', 'd']

如果想要保持他们原来的排序:

用list类的sort方法

l1 = ['b','c','d','b','c','a','a']
l2 = list(set(l1))
l2.sort(key=l1.index)
print l2

也可以这样写

l1 = ['b','c','d','b','c','a','a']
l2 = sorted(set(l1),key=l1.index)
print l2

也可以用遍历

l1 = ['b','c','d','b','c','a','a']
l2 = []
for i in l1:
  if not i in l2:
    l2.append(i)
print l2

上面的代码也可以这样写

l1 = ['b','c','d','b','c','a','a']
l2 = []
[l2.append(i) for i in l1 if not i in l2]
print l2

这样就可以保证排序不变了:

['b', 'c', 'd', 'a']

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python中二维阵列的变换实例
Oct 09 Python
使用python开发vim插件及心得分享
Nov 04 Python
Python中处理字符串之isalpha()方法的使用
May 18 Python
Python的Scrapy爬虫框架简单学习笔记
Jan 20 Python
Python 读取图片文件为矩阵和保存矩阵为图片的方法
Apr 27 Python
Python利用递归实现文件的复制方法
Oct 27 Python
处理python中多线程与多进程中的数据共享问题
Jul 28 Python
利用anaconda作为python的依赖库管理方法
Aug 13 Python
用python画一只可爱的皮卡丘实例
Nov 21 Python
Python for循环与getitem的关系详解
Jan 02 Python
Python warning警告出现的原因及忽略方法
Jan 31 Python
用Python绘制漫步图实例讲解
Feb 26 Python
python在windows下实现ping操作并接收返回信息的方法
Mar 20 #Python
Python实现微信公众平台自定义菜单实例
Mar 20 #Python
python在windows和linux下获得本机本地ip地址方法小结
Mar 20 #Python
python使用三角迭代计算圆周率PI的方法
Mar 20 #Python
Cpy和Python的效率对比
Mar 20 #Python
Python通过PIL获取图片主要颜色并和颜色库进行对比的方法
Mar 19 #Python
Python实现简单状态框架的方法
Mar 19 #Python
You might like
天使彦史上最神还原,性别曝光的那一刻,百万网友恋爱了
2020/03/02 国漫
首页四格,首页五格For6.0(GBK)(UTF-8)[12种组合][9-18][版主安装测试通过]
2007/09/24 PHP
PHP+SQL 注入攻击的技术实现以及预防办法
2010/12/29 PHP
PHP 类相关函数的使用详解
2013/05/10 PHP
在html文件中也可以执行php语句的方法
2015/04/09 PHP
验证token、回复图文\文本、推送消息的实用微信类php代码
2016/06/28 PHP
js写一个字符串转成驼峰的实例
2013/06/21 Javascript
textarea 控制输入字符字节数(示例代码)
2013/12/27 Javascript
JavaScript对象之深度克隆介绍
2014/12/08 Javascript
js事件监听器用法实例详解
2015/06/01 Javascript
jQuery检测某个元素是否存在代码分享
2015/07/09 Javascript
javascript实现点击单选按钮链接转向对应网址的方法
2015/08/12 Javascript
js/jq仿window文件夹移动/剪切/复制等操作代码
2017/03/08 Javascript
Nodejs进阶:express+session实现简易登录身份认证
2017/04/24 NodeJs
webpack使用 babel-loader 转换 ES6代码示例
2017/08/21 Javascript
element-ui中的select下拉列表设置默认值方法
2018/08/24 Javascript
JavaScript使用递归和循环实现阶乘的实例代码
2018/08/28 Javascript
js操作table中tr的顺序实现上移下移一行的效果
2018/11/22 Javascript
react项目从新建到部署的实现示例
2021/02/19 Javascript
Python黑魔法Descriptor描述符的实例解析
2016/06/02 Python
使用Kivy将python程序打包为apk文件
2017/07/29 Python
python自动重试第三方包retrying模块的方法
2018/04/24 Python
Django操作session 的方法
2020/03/09 Python
Django Form设置文本框为readonly操作
2020/07/03 Python
Numpy实现卷积神经网络(CNN)的示例
2020/10/09 Python
Python SQLAlchemy库的使用方法
2020/10/13 Python
CSS3之多背景background使用示例
2013/10/18 HTML / CSS
加拿大女包品牌:Matt & Nat
2017/05/12 全球购物
英国最大的在线快递公司之一:ParcelHero
2019/11/04 全球购物
软件测试常见笔试题
2012/02/04 面试题
我的动漫时代的创业计划书范文
2014/01/27 职场文书
竞争上岗演讲稿范文
2014/05/12 职场文书
优秀班干部主要事迹材料
2015/11/04 职场文书
2016年小学“我们的节日·中秋节”活动总结
2016/04/05 职场文书
老生常谈 使用 CSS 实现三角形的技巧(多种方法)
2021/04/13 HTML / CSS
将MySQL的表数据全量导入clichhouse库中
2022/03/21 MySQL