Python实现多属性排序的方法


Posted in Python onDecember 05, 2018

多属性排序:

把需要排序的属性拿出来作为一个 tuple,主要的放前面,次要的放后面。

假如某对象有n个属性,那么先按某规则对属性a进行排序,在属性a相等的情况下再按某规则对属性b进行排序,以此类推。

Python实现多属性排序的方法

终端打印结果如下:

Python实现多属性排序的方法

 按照属性name进行排序:

按照ASCII进行排序,本案例中,按照小写字母的顺序进行排序;

按照属性name和age进行排序:

案例中,先斤=进行name进行排序后,再用age进行排序,我们看到的结果是:
主要是按照age进行排序,如果age相同,那么就按照name属性进行排序;
我们将代码进行简化,将多个需要进行排序的属性直接放在元组里传入:

Python实现多属性排序的方法

打印结果如下:

Python实现多属性排序的方法

我们会发现,一次性将多个属性传入后,它的打印结果和上面的不一样;原因是这样的,我们如果需要进行多属性的排序,那么,主要的条件应该放在前面,次要的放在后面:

修改代码如下:

Python实现多属性排序的方法

结果如下,这就和我们想要的结果是一样的了

Python实现多属性排序的方法

总结

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

Python 相关文章推荐
布同 统计英文单词的个数的python代码
Mar 13 Python
python二叉树遍历的实现方法
Nov 21 Python
Python的字典和列表的使用中一些需要注意的地方
Apr 24 Python
python+django+sql学生信息管理后台开发
Jan 11 Python
python中abs&map&reduce简介
Feb 20 Python
使用requests库制作Python爬虫
Mar 25 Python
使用Python获取并处理IP的类型及格式方法
Nov 01 Python
使用python 对验证码图片进行降噪处理
Dec 18 Python
用pytorch的nn.Module构造简单全链接层实例
Jan 14 Python
Python classmethod装饰器原理及用法解析
Oct 17 Python
anaconda升级sklearn版本的实现方法
Feb 22 Python
浅谈Python响应式类库RxPy
Jun 14 Python
python通过ffmgep从视频中抽帧的方法
Dec 05 #Python
Python中xml和json格式相互转换操作示例
Dec 05 #Python
Python采集猫眼两万条数据 对《无名之辈》影评进行分析
Dec 05 #Python
python_opencv用线段画封闭矩形的实例
Dec 05 #Python
在python中实现将一张图片剪切成四份的方法
Dec 05 #Python
python实现对任意大小图片均匀切割的示例
Dec 05 #Python
windows下 兼容Python2和Python3的解决方法
Dec 05 #Python
You might like
上海无线电三厂简史修改版
2021/03/01 无线电
php桌面中心(三) 修改数据库
2007/03/11 PHP
PHP常量DIRECTORY_SEPARATOR原理及用法解析
2020/11/10 PHP
JavaScript在IE和Firefox(火狐)的不兼容问题解决方法小结
2010/04/13 Javascript
jquerymobile checkbox及时刷新才能获取其准确值
2012/04/14 Javascript
用javascript对一个json数组深度赋值示例
2014/07/27 Javascript
JavaScript中的toDateString()方法使用详解
2015/06/12 Javascript
原生javascript实现解析XML文档与字符串
2016/03/01 Javascript
javascript中数组和字符串的方法对比
2016/07/20 Javascript
vuejs动态组件给子组件传递数据的方法详解
2016/09/09 Javascript
js阻止冒泡和默认事件(默认行为)详解
2016/10/20 Javascript
Javascript实现图片懒加载插件的方法
2016/10/20 Javascript
jQuery Masonry瀑布流插件使用方法详解
2017/01/18 Javascript
boostrapTable的refresh和refreshOptions区别浅析
2017/01/22 Javascript
谈谈JavaScript数组常用方法总结
2017/01/24 Javascript
Vue2单一事件管理组件通信
2017/05/09 Javascript
利用Jasmine对Angular进行单元测试的方法详解
2017/06/12 Javascript
Javascript的console['']常用输入方法汇总
2018/04/26 Javascript
微信小程序实现侧边栏分类
2019/10/21 Javascript
node使用mysql获取数据库数据中文乱码问题的解决
2019/12/02 Javascript
python学习手册中的python多态示例代码
2014/01/21 Python
python 文件操作api(文件操作函数)
2016/08/28 Python
在django中使用自定义标签实现分页功能
2017/07/04 Python
解决Django模板无法使用perms变量问题的方法
2017/09/10 Python
python使用Tesseract库识别验证
2018/03/21 Python
python将.ppm格式图片转换成.jpg格式文件的方法
2018/10/27 Python
windows10下安装TensorFlow Object Detection API的步骤
2019/06/13 Python
执行Django数据迁移时报 1091错误及解决方法
2019/10/14 Python
css3模拟jq点击事件的实例代码
2017/07/06 HTML / CSS
TripAdvisor日本:全球领先的旅游网站
2019/02/14 全球购物
联想阿根廷官方网站:Lenovo Argentina
2019/10/14 全球购物
新电JAVA笔试题目
2014/08/31 面试题
森马旗舰店双十一营销方案
2014/09/29 职场文书
2014年环境整治工作总结
2014/12/10 职场文书
安全生产先进个人事迹材料
2014/12/30 职场文书
2015年感恩母亲节活动方案
2015/05/04 职场文书