Python对列表去重的多种方法(四种方法)


Posted in Python onDecember 05, 2017

无聊统计了下列表去重到底有多少种方法。下面小编给大家总结一下,具体内容详情如下;

开发中对数组、列表去重是非常常见的需求,对一个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 = []
for id in orgList:
 if id not in formatList:
  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]

总结

以上所述是小编给大家介绍的Python对列表去重的多种方法(四种方法),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
python实现文本文件合并
Dec 29 Python
轻松掌握python设计模式之访问者模式
Nov 18 Python
Python中模块pymysql查询结果后如何获取字段列表
Jun 05 Python
Python http接口自动化测试框架实现方法示例
Dec 06 Python
python按键按住不放持续响应的实例代码
Jul 17 Python
关于Python3 lambda函数的深入浅出
Nov 27 Python
Python箱型图处理离群点的例子
Dec 09 Python
Python脚本实现监听服务器的思路代码详解
May 28 Python
分享一枚pycharm激活码适用所有pycharm版本我的pycharm2020.2.3激活成功
Nov 20 Python
pandas map(),apply(),applymap()区别解析
Feb 24 Python
Python基础知识学习之类的继承
May 31 Python
python字典进行运算原理及实例分享
Aug 02 Python
详解Python在七牛云平台的应用(一)
Dec 05 #Python
Python 快速实现CLI 应用程序的脚手架
Dec 05 #Python
python调用Delphi写的Dll代码示例
Dec 05 #Python
Python字典数据对象拆分的简单实现方法
Dec 05 #Python
python reduce 函数使用详解
Dec 05 #Python
有趣的python小程序分享
Dec 05 #Python
详细分析python3的reduce函数
Dec 05 #Python
You might like
pw的一个放后门的方法分析
2007/10/08 PHP
MYSQL 小技巧 -- LAST_INSERT_ID
2009/11/24 PHP
php下通过IP获取地理位置的代码(小偷程序)
2011/06/09 PHP
PHP使用GIFEncoder类生成gif动态滚动字幕
2014/07/01 PHP
php使用unset()删除数组中某个单元(键)的方法
2015/02/17 PHP
php检查页面是否被百度收录
2015/10/28 PHP
php正则修正符用法实例详解
2016/12/29 PHP
js异步加载的三种解决方案
2013/03/04 Javascript
鼠标拖动实现DIV排序示例代码
2013/10/14 Javascript
JS实现的仿淘宝交易倒计时效果
2015/11/27 Javascript
学习javascript面向对象 理解javascript原型和原型链
2016/01/04 Javascript
总结几道关于Node.js的面试问题
2017/01/11 Javascript
Bootstrap jquery.twbsPagination.js动态页码分页实例代码
2017/02/20 Javascript
node.js-v6新版安装具体步骤(分享)
2017/09/06 Javascript
javascript数组拍平方法总结
2018/01/20 Javascript
vue.js绑定事件监听器示例【基于v-on事件绑定】
2018/07/07 Javascript
Vue项目引进ElementUI组件的方法
2018/11/11 Javascript
JavaScript私有变量实例详解
2019/01/24 Javascript
vue简单练习 桌面时钟的实现代码实例
2019/09/19 Javascript
JS代码简洁方式之函数方法详解
2020/07/28 Javascript
Python sys.path详细介绍
2013/10/17 Python
python3+PyQt5实现文档打印功能
2018/04/24 Python
Python 使用PIL numpy 实现拼接图片的示例
2018/05/08 Python
CentOS7下python3.7.0安装教程
2018/07/30 Python
Django如何开发简单的查询接口详解
2019/05/17 Python
日本著名的平价时尚女性购物网站:Fifth
2016/08/24 全球购物
阿联酋团购网站:Groupon阿联酋
2016/10/14 全球购物
益达广告词
2014/03/14 职场文书
大学生学雷锋活动总结
2014/06/26 职场文书
小学生美德少年事迹材料
2014/08/24 职场文书
工伤事故赔偿协议书
2014/10/27 职场文书
员工家属慰问信
2015/03/24 职场文书
工程质量保证书
2015/05/09 职场文书
如何利用STAR法则制作留学文书?
2019/08/26 职场文书
老生常谈 使用 CSS 实现三角形的技巧(多种方法)
2021/04/13 HTML / CSS
javascript遍历对象的五种方式实例代码
2021/10/24 Javascript