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使用PyGreSQL操作PostgreSQL数据库教程
Jul 30 Python
浅析Python的Django框架中的Memcached
Jul 23 Python
Python获取央视节目单的实现代码
Jul 25 Python
Python爬虫抓取技术的一些经验
Jul 12 Python
Flask教程之重定向与错误处理实例分析
Aug 01 Python
Django框架 Pagination分页实现代码实例
Sep 04 Python
Django框架 querySet功能解析
Sep 04 Python
Python爬虫库BeautifulSoup获取对象(标签)名,属性,内容,注释
Jan 25 Python
python实现猜拳游戏
Mar 04 Python
Python编写万花尺图案实例
Jan 03 Python
使paramiko库执行命令时在给定的时间强制退出功能的实现
Mar 03 Python
Python图片检索之以图搜图
May 31 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
php MYSQL 数据备份类
2009/06/19 PHP
openPNE常用方法分享
2011/11/29 PHP
php实现构建排除当前元素的乘积数组方法
2018/10/06 PHP
php自定义排序uasort函数示例【二维数组按指定键值排序】
2019/06/19 PHP
javascript之通用简单的table选项卡实现(二)
2010/05/09 Javascript
jQuery Jcrop插件实现图片选取功能
2011/11/23 Javascript
Eval and new funciton not the same thing
2012/12/27 Javascript
node.js中使用node-schedule实现定时任务实例
2014/06/03 Javascript
使用phantomjs进行网页抓取的实现代码
2014/09/29 Javascript
[原创]JQuery 在表单提交之前修改 提交的值
2016/04/14 Javascript
js时间控件只显示年月
2017/01/08 Javascript
使用jquery给新生的th绑定hover事件的实例
2017/02/10 Javascript
canvas实现简易的圆环进度条效果
2017/02/28 Javascript
Bootstrap Table使用整理(二)
2017/06/09 Javascript
javascript按钮禁用和启用的效果实例代码
2017/10/29 Javascript
javascript trie前缀树的示例
2018/01/29 Javascript
在 webpack 中使用 ECharts的实例详解
2018/02/05 Javascript
AngularJS使用$http配置对象方式与服务端交互方法
2018/08/13 Javascript
VUE兄弟组件传值操作实例分析
2019/10/26 Javascript
Typescript3.9 常用新特性一览(推荐)
2020/05/14 Javascript
JavaScript隐式类型转换代码实例
2020/05/29 Javascript
[37:02]OG vs INfamous 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
深入解析Python中的urllib2模块
2015/11/13 Python
python输入错误密码用户锁定实现方法
2017/11/27 Python
python的xpath获取div标签内html内容,实现innerhtml功能的方法
2019/01/02 Python
Django nginx配置实现过程详解
2020/09/10 Python
在Ubuntu中安装并配置Pycharm教程的实现方法
2021/01/06 Python
python 实现Requests发送带cookies的请求
2021/02/08 Python
在C++ 程序中调用被C 编译器编译后的函数,为什么要加extern "C"
2014/08/09 面试题
描述RIP和OSPF区别以及特点
2015/01/17 面试题
优秀教师演讲稿
2014/05/06 职场文书
安全生产演讲稿
2014/05/09 职场文书
集体生日活动方案
2014/08/18 职场文书
勿忘国耻9.18演讲稿(经典篇)
2014/09/14 职场文书
宝宝满月宴答谢词
2015/09/30 职场文书
基于Python实现一个春节倒计时脚本
2022/01/22 Python