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 相关文章推荐
pyqt和pyside开发图形化界面
Jan 22 Python
Python3基础之基本数据类型概述
Aug 13 Python
Django应用程序中如何发送电子邮件详解
Feb 04 Python
详解Python核心对象类型字符串
Feb 11 Python
详解如何将python3.6软件的py文件打包成exe程序
Oct 09 Python
用Python读取几十万行文本数据
Dec 24 Python
使用python3调用wxpy模块监控linux日志并定时发送消息给群组或好友
Jun 05 Python
解决tensorboard多个events文件显示紊乱的问题
Feb 15 Python
Python GUI编程学习笔记之tkinter中messagebox、filedialog控件用法详解
Mar 30 Python
Nginx+Uwsgi+Django 项目部署到服务器的思路详解
May 08 Python
django在开发中取消外键约束的实现
May 20 Python
pytorch 如何使用float64训练
May 24 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
php对二维数组进行排序的简单实例
2013/12/19 PHP
php获取textarea的值并处理回车换行的方法
2014/10/20 PHP
php短址转换实现方法
2015/02/25 PHP
thinkPHP中钩子的两种配置调用方法详解
2016/11/11 PHP
浅谈laravel框架sql中groupBy之后排序的问题
2019/10/17 PHP
js 模拟气泡屏保效果代码
2010/07/10 Javascript
子页向父页传值示例
2013/11/27 Javascript
js 实现浏览历史记录示例
2014/04/20 Javascript
js检测网络是否具体连接功能的代码
2014/05/23 Javascript
jquery操作 iframe的方法
2014/12/03 Javascript
基于Vuejs框架实现翻页组件
2020/06/29 Javascript
jQuery文字轮播特效
2017/02/12 Javascript
Angular.Js中过滤器filter与自定义过滤器filter实例详解
2017/05/08 Javascript
QRCode.js:基于JQuery的生成二维码JS库的使用
2017/06/23 jQuery
详解关于react-redux中的connect用法介绍及原理解析
2017/09/11 Javascript
vue实现未登录跳转到登录页面的方法
2018/07/17 Javascript
浅谈React Event实现原理
2018/09/20 Javascript
JavaScript遍历DOM元素的常见方式示例
2019/02/16 Javascript
element-ui上传一张图片后隐藏上传按钮功能
2019/05/22 Javascript
Vue组件化开发之通用型弹出框的实现
2020/02/28 Javascript
Javascript查看大图功能代码实现
2020/05/07 Javascript
JavaScript 实现下雪特效的示例代码
2020/09/09 Javascript
如何手写一个简易的 Vuex
2020/10/10 Javascript
python登录QQ邮箱发信的实现代码
2013/02/10 Python
python解析xml文件实例分析
2015/05/27 Python
Python中常见的异常总结
2018/02/20 Python
influx+grafana自定义python采集数据和一些坑的总结
2018/09/17 Python
python将pandas datarame保存为txt文件的实例
2019/02/12 Python
PyCharm2018 安装及破解方法实现步骤
2019/09/09 Python
python使用Matplotlib改变坐标轴的默认位置
2019/10/18 Python
Python random模块的使用示例
2020/10/10 Python
乌克兰电子和家用电器商店:Foxtrot
2019/07/23 全球购物
博士论文答辩开场白
2015/06/01 职场文书
2019如何书写演讲稿?
2019/07/01 职场文书
python区块链持久化和命令行接口实现简版
2022/05/25 Python
MYSQL中文乱码问题的解决方案
2022/06/14 MySQL