详解python中sort排序使用


Posted in Python onMarch 23, 2019

1.前言

昨天一学妹问我一个关于python的问题,当时在外忙碌,没时间细看。今天看一下,咋一看我还真的不知道这个问题,bookinfo.sort(reverse=True ,key=lambda x:(x[1],x[1]/x[2]))是如何排序的。但是我猜测应该是按照第二个元素排序,如果第二个元素相同,就按照第二个元素和第三个元素的比值排序。猜测归猜测,自己就去测试了一下。过程如下。

2.环境准备

系统:win10

python版本:3.6

3.程序实现

为了满足实验要求,就设置几个第二个元素相同的数据如:摆渡人

bookinfo=[('不一样的卡梅拉(全套)',22.50,120),('零基础学Android',65.10,89.80),
     ('摆渡人',23.40,36.00),('福尔摩斯探案全集8册',22.50,128),('不一样的卡梅拉(全套)',22.50,100),('摆渡人',23.40,40.00)]
bookinfo.sort(key=lambda x:(x[1],x[1]/x[2]))  
for temp in bookinfo:
	print(temp,"x[1]/x[2]:",temp[1]/temp[2])

程序运行后的结果是:

('福尔摩斯探案全集8册', 22.5, 128) x[1]/x[2]: 0.17578125
('不一样的卡梅拉(全套)', 22.5, 120) x[1]/x[2]: 0.1875
('不一样的卡梅拉(全套)', 22.5, 100) x[1]/x[2]: 0.225
('摆渡人', 23.4, 40.0) x[1]/x[2]: 0.585
('摆渡人', 23.4, 36.0) x[1]/x[2]: 0.6499999999999999
('零基础学Android', 65.1, 89.8) x[1]/x[2]: 0.7249443207126949
[Finished in 0.2s]

 4.sort拓展

在使用sort函数的时候需要注意的是:该函数会修改原来的数组,不会返回新的数组。

如果想使用逆序则可以:bookinfo.sort(reverse=True,key=lambda x:(x[1],x[1]/x[2]))

key这个属性后的x是任意的,自定义的,代表当前的元素的内容。

以上所述是小编给大家介绍的python中sort排序使用详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
python self,cls,decorator的理解
Jul 13 Python
Python正则表达式匹配HTML页面编码
Apr 08 Python
小议Python中自定义函数的可变参数的使用及注意点
Jun 21 Python
python+POP3实现批量下载邮件附件
Jun 19 Python
Django项目开发中cookies和session的常用操作分析
Jul 03 Python
Python3.6使用tesseract-ocr的正确方法
Oct 17 Python
python matplotlib库绘制条形图练习题
Aug 10 Python
Django实现网页分页功能
Oct 31 Python
PYQT5开启多个线程和窗口,多线程与多窗口的交互实例
Dec 13 Python
python爬虫开发之Beautiful Soup模块从安装到详细使用方法与实例
Mar 09 Python
Python 3.10 的首个 PEP 诞生,内置类型 zip() 迎来新特性(推荐)
Jul 03 Python
Python+Xlwings 删除Excel的行和列
Dec 19 Python
Python基础之函数的定义与使用示例
Mar 23 #Python
详解用Python练习画个美队盾牌
Mar 23 #Python
详解python中TCP协议中的粘包问题
Mar 22 #Python
Python JSON格式数据的提取和保存的实现
Mar 22 #Python
Python3.4解释器用法简单示例
Mar 22 #Python
Python常见数字运算操作实例小结
Mar 22 #Python
详解python校验SQL脚本命名规则
Mar 22 #Python
You might like
在mysql数据库原有字段后增加新内容
2009/11/26 PHP
thinkphp3.2.0 setInc方法 源码全面解析
2018/01/29 PHP
Codeigniter里的无刷新上传的实现代码
2019/04/14 PHP
jquery异步循环获取功能实现代码
2010/09/19 Javascript
深入理解JavaScript作用域和作用域链
2011/10/21 Javascript
浅析hasOwnProperty方法的应用
2013/11/20 Javascript
浅析JavaScript中break、continue和return的区别
2016/11/30 Javascript
根据输入邮箱号跳转到相应登录地址的解决方法
2016/12/13 Javascript
easyui combogrid实现本地模糊搜索过滤多列
2017/05/13 Javascript
详解前后端分离之VueJS前端
2017/05/24 Javascript
基于jQuery的表单填充实例
2017/08/22 jQuery
Vue2.0实现组件数据的双向绑定问题
2018/03/06 Javascript
Angular4.x Event (DOM事件和自定义事件详解)
2018/10/09 Javascript
JS+HTML5本地存储Localstorage实现注册登录及验证功能示例
2020/02/10 Javascript
EXTJS7实现点击拖拉选择文本
2020/12/17 Javascript
[03:11]不朽宝藏三外观展示
2020/09/18 DOTA
Python和GO语言实现的消息摘要算法示例
2015/03/10 Python
python 时间戳与格式化时间的转化实现代码
2016/03/23 Python
django使用图片延时加载引起后台404错误
2017/04/18 Python
基于Python实现定时自动给微信好友发送天气预报
2018/10/25 Python
对pandas中时间窗函数rolling的使用详解
2018/11/28 Python
Django高级编程之自定义Field实现多语言
2019/07/02 Python
Python hashlib模块实例使用详解
2019/12/24 Python
python tkinter实现连连看游戏
2020/11/16 Python
Python的scikit-image模块实例讲解
2020/12/30 Python
html5 canvas fillRect坐标和大小的问题解决方法
2014/03/26 HTML / CSS
htnl5利用svg页面高斯模糊的方法
2018/07/20 HTML / CSS
荷兰的时尚市场:To Be Dressed
2019/05/06 全球购物
《湘夫人》教学反思
2014/02/21 职场文书
《老山界》教学反思
2014/04/08 职场文书
教师作风整改措施思想汇报
2014/10/12 职场文书
党的群众路线教育实践活动批评与自我批评发言稿
2014/10/16 职场文书
会计师事务所实习证明
2014/11/16 职场文书
离婚民事起诉状
2015/08/03 职场文书
公务员的复习计划书,请收下!
2019/07/15 职场文书
nginx对http请求处理的各个阶段详析
2021/03/31 Servers