详解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 相关文章推荐
python3批量删除豆瓣分组下的好友的实现代码
Jun 07 Python
Python编程之变量赋值操作实例分析
Jul 24 Python
python实现堆和索引堆的代码示例
Mar 19 Python
Python中安装easy_install的方法
Nov 18 Python
python将处理好的图像保存到指定目录下的方法
Jan 10 Python
解决安装pycharm后不能执行python脚本的问题
Jan 19 Python
Python实现Linux监控的方法
May 16 Python
Python命令行参数解析工具 docopt 安装和应用过程详解
Sep 26 Python
Python : turtle色彩控制实例详解
Jan 19 Python
tensorflow求导和梯度计算实例
Jan 23 Python
提取视频中的音频 Python只需要三行代码!
May 10 Python
python 开心网和豆瓣日记爬取的小爬虫
May 29 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
PHP设计模式 注册表模式
2012/02/05 PHP
PHP面向对象的进阶学习(抽像类、接口、final、类常量)
2012/05/07 PHP
微信营销平台系统?刮刮乐的开发
2014/06/10 PHP
Laravel中使用自己编写类库的3种方法
2015/02/10 PHP
PHP利用APC模块实现大文件上传进度条的方法
2015/10/29 PHP
PHP实现的数独求解问题示例
2017/04/18 PHP
php设计模式之单例模式用法经典示例分析
2019/09/20 PHP
prototype Element学习笔记(篇一)
2008/10/26 Javascript
js和jquery使按钮失效为不可用状态的方法
2014/01/26 Javascript
javascript制作坦克大战全纪录(2)
2014/11/27 Javascript
nodeJS代码实现计算交社保是否合适
2015/03/09 NodeJs
javascript判断数组内是否重复的方法
2015/04/21 Javascript
js实现字符串转日期格式的方法
2015/05/20 Javascript
js获取form表单所有数据的简单方法
2016/08/18 Javascript
微信小程序 定义全局数据、函数复用、模版等详细介绍
2016/10/27 Javascript
原生js实现打字动画游戏
2017/02/04 Javascript
最常见和最有用的字符串相关的方法详解
2017/02/06 Javascript
原生JavaScript实现精美的淘宝轮播图效果示例【附demo源码下载】
2017/05/27 Javascript
Node错误处理笔记之挖坑系列教程
2018/06/05 Javascript
vue结合axios与后端进行ajax交互的方法
2018/07/06 Javascript
详解ESLint在Vue中的使用小结
2018/10/15 Javascript
在Vue项目中取消ESLint代码检测的步骤讲解
2019/01/27 Javascript
Vue配置marked链接添加target="_blank"的方法
2019/07/19 Javascript
小程序input数据双向绑定实现方法
2019/10/17 Javascript
vue中在vuex的actions中请求数据实例
2019/11/08 Javascript
让python在hadoop上跑起来
2016/01/27 Python
python 实现selenium断言和验证的方法
2019/02/13 Python
python 两种方法删除空文件夹
2020/09/29 Python
HTML5中的nav标签学习笔记
2016/06/24 HTML / CSS
美国一家主打母婴用品的团购网站:zulily
2017/09/19 全球购物
投标担保书范文
2014/04/02 职场文书
教师求职自荐书
2014/06/14 职场文书
尊老爱幼演讲稿
2014/09/04 职场文书
党员教师群众路线个人整改措施
2014/10/28 职场文书
Python 正则模块详情
2021/11/02 Python
centos环境下nginx高可用集群的搭建指南
2022/07/23 Servers