Python sorted排序方法如何实现


Posted in Python onMarch 31, 2020

在给列表排序时,sorted非常好用,语法如下:

sorted(iterable[, cmp[,key[,reverse]]])

sorted定义如下:

  • sorted( iterable[, cmp[, key[, reverse]]])
  • iterable:是可迭代类型类型;
  • cmp:用于比较的函数,比较什么由key决定,有默认值,迭代集合中的一项;
  • key:用列表元素的某个属性和函数进行作为关键字,有默认值,迭代集合中的一项;
  • reverse:排序规则. reverse = True 或者 reverse = False,有默认值。
  • 返回值:是一个经过排序的可迭代类型,与iterable一样。简单列表排序,很容易完成,sorted(list)返回的对象就是列表结果,但是遇到列表中嵌套元组时,需要使用特殊的方法解决。

问题描述:

给定列表如下:

list_example = [('John', 35), ('Jack', 32), ('Michael', 28), ('Sean', 20)]

输出要求:

[('Sean', 20), ('Michael', 28), ('Jack', 32), ('John', 35)]

解决方法:

1. 传入函数给key,完成操作;

2. 直接使用lambda函数;

方法1的代码如下:

def revsort(oldlist):
 return oldlist[::-1]
def by_age(li):
 return sorted(li, key = revsort)

方法2的代码如下:

def by_age(li):
 return sorted(li, key = lambda x: x[1])

直接print可以得到结果:

print(by_age(list_example))

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
解决谷歌搜索技术文章时打不开网页问题的python脚本
Feb 10 Python
Python加pyGame实现的简单拼图游戏实例
May 15 Python
Python实现对excel文件列表值进行统计的方法
Jul 25 Python
Python实现的读取/更改/写入xml文件操作示例
Aug 30 Python
BP神经网络原理及Python实现代码
Dec 18 Python
使用pandas的box_plot去除异常值
Dec 10 Python
Tensorflow不支持AVX2指令集的解决方法
Feb 03 Python
python实现简单井字棋小游戏
Mar 05 Python
用 Python 制作地球仪的方法
Apr 24 Python
推荐技术人员一款Python开源库(造数据神器)
Jul 08 Python
利用Python中的Xpath实现一个在线汇率转换器
Sep 09 Python
基于Python实现股票收益率分析
Apr 02 Python
解决Django中checkbox复选框的传值问题
Mar 31 #Python
Python文本文件的合并操作方法代码实例
Mar 31 #Python
Python调用接口合并Excel表代码实例
Mar 31 #Python
Python如何批量获取文件夹的大小并保存
Mar 31 #Python
Django使用list对单个或者多个字段求values值实例
Mar 31 #Python
django实现模板中的字符串文字和自动转义
Mar 31 #Python
Python使用graphviz画流程图过程解析
Mar 31 #Python
You might like
受疫情影响 动画《Re从零开始的异世界生活》第二季延期至7月
2020/03/10 日漫
php fckeditor 调用的函数
2009/06/21 PHP
ThinkPHP3.1新特性之对页面压缩输出的支持
2014/06/19 PHP
Ajax请求PHP后台接口返回信息的实例代码
2018/08/21 PHP
url 特殊字符 传递参数解决方法
2010/01/01 Javascript
Javascript string 扩展库代码
2010/04/09 Javascript
浅析JavaScript中的类型和对象
2013/11/29 Javascript
xmlhttp缓存清除的2种解决方法
2013/12/13 Javascript
window.print打印指定div实例代码
2013/12/13 Javascript
JQuery表格拖动调整列宽效果(自己动手写的)
2014/09/01 Javascript
JS获取html元素的标记名实现方法
2016/10/08 Javascript
JS重载实现方法分析
2016/12/16 Javascript
js表单序列化判断空值的实例
2017/09/22 Javascript
动态加载、移除js/css文件的示例代码
2018/03/20 Javascript
vueScroll实现移动端下拉刷新、上拉加载
2019/03/22 Javascript
关于layui 弹出层一闪而过就消失的解决方法
2019/09/09 Javascript
JavaScript仿京东秒杀倒计时
2020/03/17 Javascript
javascript实现雪花飘落效果
2020/08/19 Javascript
跟老齐学Python之数据类型总结
2014/09/24 Python
Python的Flask框架中SQLAlchemy使用时的乱码问题解决
2015/11/07 Python
Python闭包的两个注意事项(推荐)
2017/03/20 Python
Python遍历pandas数据方法总结
2018/02/09 Python
Python单元测试unittest的具体使用示例
2018/12/17 Python
pytorch 实现tensor与numpy数组转换
2019/12/27 Python
Python如何对齐字符串
2020/07/30 Python
详解Django中异步任务之django-celery
2020/11/05 Python
python邮件中附加文字、html、图片、附件实现方法
2021/01/04 Python
Html5 Canvas动画基础碰撞检测的实现
2018/12/06 HTML / CSS
凌阳科技股份有限公司C++程序员面试题笔试题
2014/11/20 面试题
自愿解除劳动合同协议书
2014/09/11 职场文书
高一课前三分钟演讲稿
2014/09/13 职场文书
贫困证明模板(3篇)
2014/09/16 职场文书
乡镇党的群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
践行三严三实心得体会
2014/10/13 职场文书
解决golang在import自己的包报错的问题
2021/04/29 Golang
python工具dtreeviz决策树可视化和模型可解释性
2022/03/03 Python