Python使用sorted排序的方法小结


Posted in Python onJuly 28, 2017

本文实例讲述了Python使用sorted排序的方法。分享给大家供大家参考,具体如下:

# 例1. 按照元素出现的次数来排序
seq = [2,4,3,1,2,2,3]
# 按次数排序
seq2 = sorted(seq, key=lambda x:seq.count(x))
print(seq2) # [4, 1, 3, 3, 2, 2, 2]
# 改进:第一优先按次数,第二优先按值
seq3 = sorted(seq, key=lambda x:(seq.count(x), x))
print(seq3) # [1, 4, 3, 3, 2, 2, 2]
'''
原理:
  先比较元组的第一个值,值小的在前。(注意:False < True)
  如果相等就比较元组的下一个值,以此类推。
'''

运行结果:

Python使用sorted排序的方法小结

#例2.这是一个字符串排序,排序规则:小写<大写<奇数<偶数
s = 'asdf234GDSdsf23'
s2 = "".join(sorted(s, key=lambda x: (x.isdigit(),x.isdigit() and int(x) % 2 == 0,x.isupper(),x)))
print(s2) # addffssDGS33224

运行结果:

Python使用sorted排序的方法小结

#例3. 一道面试题:
list1 = [7, -8, 5, 4, 0, -2, -5]
#要求1.正数在前负数在后 2.正数从小到大 3.负数从大到小
list2 = sorted(list1,key=lambda x:(x<0, abs(x)))
print(list2) # [0,4,5,7,-2,-5,-8]

运行结果:

Python使用sorted排序的方法小结

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python中日期和时间格式化输出的方法小结
Mar 19 Python
python通过ssh-powershell监控windows的方法
Jun 02 Python
在Python的Django框架中创建语言文件
Jul 27 Python
Python读取properties配置文件操作示例
Mar 29 Python
python爬虫框架scrapy实现模拟登录操作示例
Aug 02 Python
Python爬虫将爬取的图片写入world文档的方法
Nov 07 Python
Python Excel处理库openpyxl使用详解
May 09 Python
Python 静态方法和类方法实例分析
Nov 21 Python
将python文件打包exe独立运行程序方法详解
Feb 12 Python
Python如何实现邮件功能
May 27 Python
python中wheel的用法整理
Jun 15 Python
tensorflow+k-means聚类简单实现猫狗图像分类的方法
Apr 28 Python
python发送邮件实例分享
Jul 28 #Python
Python分治法定义与应用实例详解
Jul 28 #Python
Python更新数据库脚本两种方法及对比介绍
Jul 27 #Python
Python判断文件或文件夹是否存在的三种方法
Jul 27 #Python
Python开发SQLite3数据库相关操作详解【连接,查询,插入,更新,删除,关闭等】
Jul 27 #Python
Python基于tkinter模块实现的改名小工具示例
Jul 27 #Python
python django 增删改查操作 数据库Mysql
Jul 27 #Python
You might like
磨咖啡豆的密诀
2021/03/03 冲泡冲煮
PHP不用递归实现无限分级的例子分享
2014/04/18 PHP
学习php设计模式 php实现抽象工厂模式
2015/12/07 PHP
Array.prototype.slice 使用扩展
2010/06/09 Javascript
基于jquery的一行代码轻松实现拖动效果
2010/12/28 Javascript
php对mongodb的扩展(初识如故)
2012/11/11 Javascript
原生js模拟淘宝购物车项目实战
2015/11/18 Javascript
JS中script标签defer和async属性的区别详解
2016/08/12 Javascript
jquery实现静态搜索功能(可输入搜索文字)
2017/03/28 jQuery
Javascript实现基本运算器
2017/07/15 Javascript
详解在vue-cli中引用jQuery、bootstrap以及使用sass、less编写css
2017/11/08 jQuery
JavaScript调用模式与this关键字绑定的关系
2018/04/21 Javascript
jQuery实现获取form表单内容及绑定数据到form表单操作分析
2018/07/03 jQuery
webpack5 联邦模块介绍详解
2020/07/08 Javascript
js实现车辆管理系统
2020/08/26 Javascript
pytorch 预训练层的使用方法
2019/08/20 Python
python中用logging实现日志滚动和过期日志删除功能
2019/08/20 Python
Django实现文件上传和下载功能
2019/10/06 Python
Python序列化与反序列化pickle用法实例
2019/11/11 Python
使用 Python 在京东上抢口罩的思路详解
2020/02/27 Python
解决Jupyter notebook更换主题工具栏被隐藏及添加目录生成插件问题
2020/04/20 Python
python list等分并从等分的子集中随机选取一个数
2020/11/16 Python
在pycharm创建scrapy项目的实现步骤
2020/12/01 Python
HTML5触摸事件(touchstart、touchmove和touchend)的实现
2020/05/08 HTML / CSS
个人自我鉴定范文
2013/10/04 职场文书
最受欢迎的自我评价
2013/12/22 职场文书
企业管理培训感言
2014/01/27 职场文书
新学期教师寄语
2014/04/02 职场文书
校园元旦活动总结
2014/07/09 职场文书
小学生自我评价100字(15篇)
2014/09/18 职场文书
工作作风整顿个人剖析材料
2014/10/11 职场文书
护理心得体会范文
2016/01/22 职场文书
创业者如何撰写出一份打动投资人的商业计划书?
2019/07/02 职场文书
读《皮囊》有感:理解是对他人的最大的善举
2019/11/14 职场文书
Pygame Draw绘图函数的具体使用
2021/11/17 Python
详解Python+OpenCV绘制灰度直方图
2022/03/22 Python