Python常见排序操作示例【字典、列表、指定元素等】


Posted in Python onAugust 15, 2018

本文实例讲述了Python常见排序操作。分享给大家供大家参考,具体如下:

字典排序

  • 按value排序
d1 = {"name":"python","bank":"icbc","country":china}
# reverse是否倒序,x[1]代表value,x[0]为key
d1 = sorted(d1.items(),lambda x: x[1],reverse=True)
  • 按key排序
d1 = {"name":"python","bank":"icbc","country":china}
d1 = sorted(d1.items())

列表排序

  • 不去重排序
l = [3,2,4,5]
l = sorted(l)  # 升序
# l = sorted(l,reverse=True)  # 降序
  • 去重排序
l = [3,2,3,5,1]
l = set(l)   # 使用set集合去重
l = list(l)   #
l = sorted(l)   # 排序

字典列表排序

# 以age升序排序
L = [
  {"name":"python","age":12},
  {"name":"ghj","age":10},
  {"name":"java","age":17}
]
L = sorted(L,key=lambda x: x["age"])

根据指定列表的元素顺序进行排序

用途:对于取出MySQL与MongoDB的数据时,我们常常需要对数据进行位置更换顺序,此时此种排序就能很好的解决我们的问题,对于下面列子中的sortList的数据我们可以使用Redis进行存储

# 指定列表,假设存储的是curList中的ID列表
sortList = ["4","3","5","2","1"]
# 当前列表
curList = [{"id":"1","province":"河南"},{"id":"2","province":"河北"},{"id":"3","湖南"},{"id":"4","province":"湖北"},{"id":"5","province":"江西"}]
# 根据指定列表中的ID顺序,对当前列表进行排序
curList = sorted(curList,key = lambda item:sortList.index(item["id"]))
print(curList)
# [{"id":"4","province":"湖北"},{"id":"3","province":"湖南"},{"id":"5","province":"江西"},{"id":"2","province":"河北"},{"id":"1","province":"河南"}]
Python 相关文章推荐
Django查找网站项目根目录和对正则表达式的支持
Jul 15 Python
Python利用正则表达式匹配并截取指定子串及去重的方法
Jul 30 Python
如何处理Python3.4 使用pymssql 乱码问题
Jan 08 Python
Python中列表元素转为数字的方法分析
Jun 14 Python
Python简单实现Base64编码和解码的方法
Apr 29 Python
python绘制简单折线图代码示例
Dec 19 Python
Python实现按逗号分隔列表的方法
Oct 23 Python
Python mutiprocessing多线程池pool操作示例
Jan 30 Python
python实现nao机器人身体躯干和腿部动作操作
Apr 29 Python
python使用PIL和matplotlib获取图片像素点并合并解析
Sep 10 Python
Python hashlib常见摘要算法详解
Jan 13 Python
Flask处理Web表单的实现方法
Jan 31 Python
Centos下实现安装Python3.6和Python2共存
Aug 15 #Python
详解Python中的type和object
Aug 15 #Python
python 通过 socket 发送文件的实例代码
Aug 14 #Python
Python 打印中文字符的三种方法
Aug 14 #Python
django如何连接已存在数据的数据库
Aug 14 #Python
Python requests库用法实例详解
Aug 14 #Python
Python基于SMTP协议实现发送邮件功能详解
Aug 14 #Python
You might like
索尼ICF-SW100收音机评测
2021/03/02 无线电
PHP 面向对象实现代码
2009/11/11 PHP
php中计算未知长度的字符串哪个字符出现的次数最多的代码
2012/08/14 PHP
PHP 面向对象程序设计(oop)学习笔记 (四) - 异常处理类Exception
2014/06/12 PHP
PHP以mysqli方式连接类完整代码实例
2014/07/15 PHP
php文件缓存类用法实例分析
2015/04/22 PHP
javascript实现的动态文字变换
2007/07/28 Javascript
最简单的jQuery程序 入门者学习
2009/07/09 Javascript
JQuery 1.3.2以上版本中出现pareseerror错误的解决方法
2011/01/11 Javascript
JavaScript中的作用域链和闭包
2012/06/30 Javascript
jquery中focus()函数实现当对象获得焦点后自动把光标移到内容最后
2013/09/29 Javascript
全面兼容的javascript时间格式化函数(比较实用)
2014/05/14 Javascript
jquery实现用户信息修改验证输入方法汇总
2015/07/18 Javascript
在其他地方你学不到的jQuery小贴士和技巧(欢迎收藏)
2016/01/20 Javascript
jQuery实现简单的抽奖游戏
2017/05/05 jQuery
简单了解TypeScript中如何继承 Error 类
2019/06/21 Javascript
[04:37]DOTA2英雄梦之声Vol20发条
2014/06/20 DOTA
[49:08]OpTic vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
python中安装模块包版本冲突问题的解决
2017/05/02 Python
详解如何用OpenCV + Python 实现人脸识别
2017/10/20 Python
Python获取CPU、内存使用率以及网络使用状态代码
2018/02/08 Python
python画微信表情符的实例代码
2019/10/09 Python
Python爬虫库BeautifulSoup获取对象(标签)名,属性,内容,注释
2020/01/25 Python
惠普加拿大在线商店:HP加拿大
2017/09/15 全球购物
西班牙拥有最佳品牌的动物商店:Animalear.com
2018/01/05 全球购物
美国CVS药店官网:CVS Pharmacy
2018/07/26 全球购物
英国花园、DIY、电器和家居用品商店:Robert Dyas
2019/03/18 全球购物
Sperry澳大利亚官网:源自美国帆船鞋创始品牌
2019/07/29 全球购物
土木工程毕业生自荐信
2013/09/21 职场文书
期末自我鉴定
2014/01/23 职场文书
函授药学自我鉴定
2014/02/07 职场文书
《夕阳真美》教学反思
2014/04/27 职场文书
党的群众路线教育实践活动对照检查材料范文
2014/09/24 职场文书
银行稽核岗位职责
2015/04/13 职场文书
车位出租协议书范本
2016/03/19 职场文书
网络安全倡议书(3篇)
2019/09/18 职场文书