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 list操作用法总结
Nov 10 Python
探究python中open函数的使用
Mar 01 Python
简单谈谈Python流程控制语句
Dec 04 Python
Python之re操作方法(详解)
Jun 14 Python
在django中使用自定义标签实现分页功能
Jul 04 Python
python opencv旋转图像(保持图像不被裁减)
Jul 26 Python
python绘制热力图heatmap
Mar 23 Python
django框架forms组件用法实例详解
Dec 10 Python
无需压缩软件,用python帮你操作压缩包
Aug 17 Python
python爬取天气数据的实例详解
Nov 20 Python
Pandas中DataFrame交换列顺序的方法实现
Dec 14 Python
pytorch实现加载保存查看checkpoint文件
Jul 15 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
超外差式晶体管收音机的组装与统调
2021/03/01 无线电
一个更简单的无限级分类菜单代码
2007/01/16 PHP
Joomla简单判断用户是否登录的方法
2016/05/04 PHP
三个思路解决laravel上传文件报错:413 Request Entity Too Large问题
2017/11/13 PHP
PHPExcel 修改已存在Excel的方法
2018/05/03 PHP
php支付宝APP支付功能
2020/07/29 PHP
php5.5使用PHPMailer-5.2发送邮件的完整步骤
2018/10/14 PHP
php测试kafka项目示例
2020/02/06 PHP
ThinkPHP5.1验证码功能实现的示例代码
2020/06/08 PHP
PHP延迟静态绑定使用方法实例解析
2020/09/05 PHP
javascript 禁止复制网页
2009/06/11 Javascript
JavaScript 比较时间大小的代码
2010/04/24 Javascript
jQuery基础语法实例入门
2014/12/23 Javascript
jQuery匹配文档链接并添加class的方法
2015/06/26 Javascript
jQuery获取页面及个元素高度、宽度的总结——超实用
2015/07/28 Javascript
jquery实现通用的内容渐显Tab选项卡效果
2015/09/07 Javascript
javascript函数命名的三种方式及区别介绍
2016/03/22 Javascript
使用VScode 插件debugger for chrome 调试react源码的方法
2019/09/13 Javascript
JavaScript计算出两个数的差值
2020/03/19 Javascript
python在控制台输出进度条的方法
2015/06/20 Python
利用Tkinter和matplotlib两种方式画饼状图的实例
2017/11/06 Python
python列表list保留顺序去重的实例
2018/12/14 Python
Python 通过调用接口获取公交信息的实例
2018/12/17 Python
利用Python计算KS的实例详解
2020/03/03 Python
python实现126邮箱发送邮件
2020/05/20 Python
通俗易懂了解Python装饰器原理
2020/09/17 Python
Python爬虫教程之利用正则表达式匹配网页内容
2020/12/08 Python
python实现发送QQ邮件(可加附件)
2020/12/23 Python
HTML5 Canvas 旋转风车绘制
2017/08/18 HTML / CSS
墨尔本复古时尚品牌:Dangerfield
2018/12/12 全球购物
董事长助理工作职责
2014/06/08 职场文书
2015年煤矿工作总结
2015/04/28 职场文书
演讲比赛主持词
2015/06/29 职场文书
小学生暑假生活总结
2015/07/13 职场文书
浅谈golang package中init方法的多处定义及运行顺序问题
2021/05/06 Golang
企业开发CSS命名BEM代码规范实践
2022/02/12 HTML / CSS