Python3 中sorted() 函数的用法


Posted in Python onMarch 24, 2020

描述

sorted() 函数对所有可迭代的对象进行排序操作。

语法

sorted(iterable, key=None, reverse=False) 

iterable ? 可迭代对象。
key ? 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
reverse ? 排序规则,reverse = True 降序 , reverse = False 升序(默认)。

案例

>>> a_dict={'A':2,'B':3,'C':4,'D':1,'E':5}
>>> sorted_a_dict = sorted(a_dict.items(), key = lambda x:x[1], reverse = True)
>>> sorted_a_dict
[('E', 5), ('C', 4), ('B', 3), ('A', 2), ('D', 1)]

## sorted() 函数对所有可迭代的对象进行排序操作,返回重新排序的列表
## items() 方法以列表返回可遍历的(键, 值) 元组数组。
## lambda 构造匿名函数,以元组中第二个元素作为排序依据,即x[1]
## reverse = True 表示降序排列
## 最后得到的 word_freq_dict 为按照频率倒叙排列的 (键, 值)元组 的列表

知识点补充:python中sort函数与sorted函数的区别

sort与sorted的区别:

sort是应用在list上的方法,sorted可以对所有可迭代的对象进行排序操作。

list的sort方法返回的是对已存在的列表操作后的结果,而内建函数sorted方法返回的是一个新的list,而不是在原来的基础上进行的操作。

语法

sorted用法:sorted(iterable,cmp=None,key=None,reverse=False)

sort用法:sort(cmp=None,key=None,reverse=False)

参数说明:

iterable--可迭代的对象

cmp--比较函数,比较什么由参数key决定,例如:cmp(e1, e2) 是具有两个参数的比较函数,返回值:负数(e1 < e2);0(e1 == e2);正数( e1 > e2)。

key--用列表元素的某个属性或函数作为关键字

reverse--排序规则,reverse=True降序,reverse=False升序(默认)

区别:
对于一个无序列表a,调用a.sort(),对a排序后返回a,sort()函数修改待排序的列表内容

而对于一个无序列表a,调用sorted(a),对a排序后返回一个新的列表,对a无影响

例:

Python3 中sorted() 函数的用法

总结

到此这篇关于Python3 中sorted() 函数的用法的文章就介绍到这了,更多相关Python3 sorted() 函数内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python内置函数之filter map reduce介绍
Nov 30 Python
Python自动调用IE打开某个网站的方法
Jun 03 Python
Python 登录网站详解及实例
Apr 11 Python
django创建自定义模板处理器的实例详解
Aug 14 Python
Opencv-Python图像透视变换cv2.warpPerspective的示例
Apr 11 Python
python队列Queue的详解
May 10 Python
Python 用matplotlib画以时间日期为x轴的图像
Aug 06 Python
浅谈Python类中的self到底是干啥的
Nov 11 Python
opencv3/python 鼠标响应操作详解
Dec 11 Python
Python字典底层实现原理详解
Dec 18 Python
关于Python中定制类的比较运算实例
Dec 19 Python
tensorboard显示空白的解决
Feb 15 Python
python3 deque 双向队列创建与使用方法分析
Mar 24 #Python
pyqt5 QlistView列表显示的实现示例
Mar 24 #Python
Python多线程操作之互斥锁、递归锁、信号量、事件实例详解
Mar 24 #Python
PyQt5中向单元格添加控件的方法示例
Mar 24 #Python
Python多线程Threading、子线程与守护线程实例详解
Mar 24 #Python
PYQT5 vscode联合操作qtdesigner的方法
Mar 24 #Python
ubuntu 安装pyqt5和卸载pyQt5的方法
Mar 24 #Python
You might like
laravel使用数据库测试注意事项
2020/04/10 PHP
图片自动更新(说明)
2006/10/02 Javascript
javascript实现上传图片前的预览(TX的面试题)
2007/08/20 Javascript
jQuery中的.bind()、.live()和.delegate()之间区别分析
2011/06/08 Javascript
jquery load事件(callback/data)使用方法及注意事项
2013/02/06 Javascript
JS教程:window.location使用方法的区别介绍
2013/10/04 Javascript
JavaScript中的bold()方法使用详解
2015/06/08 Javascript
浅析JavaScript中的变量复制、参数传递和作用域链
2016/01/13 Javascript
使用Bootstrap typeahead插件实现搜索框自动补全的方法
2016/07/07 Javascript
在javascript中,null>=0 为真,null==0却为假,null的值详解
2017/02/22 Javascript
js实现多行文本框统计剩余字数功能
2017/03/28 Javascript
WebStorm ES6 语法支持设置&amp;babel使用及自动编译(详解)
2017/09/08 Javascript
Vue.js的动态组件模板的实现
2018/11/26 Javascript
[46:27]DOTA2上海特级锦标赛主赛事日 - 1 胜者组第一轮#2LGD VS MVP.Phx第一局
2016/03/02 DOTA
Python写的Discuz7.2版faq.php注入漏洞工具
2014/08/06 Python
解决Python中由于logging模块误用导致的内存泄露
2015/04/23 Python
python @property的用法及含义全面解析
2018/02/01 Python
Python利用matplotlib.pyplot绘图时如何设置坐标轴刻度
2018/04/09 Python
Django框架使用内置方法实现登录功能详解
2019/06/12 Python
pycharm配置git(图文教程)
2019/08/16 Python
基于TensorFlow中自定义梯度的2种方式
2020/02/04 Python
详解pyinstaller生成exe的闪退问题解决方案
2020/06/19 Python
利用python对excel中一列的时间数据更改格式操作
2020/07/14 Python
Python 如何查找特定类型文件
2020/08/17 Python
python把一个字符串切开的实例方法
2020/09/27 Python
如何用python写个模板引擎
2021/01/14 Python
Linden Leaves官网:新西兰纯净护肤品
2020/12/20 全球购物
网络教育毕业生自我鉴定
2013/10/10 职场文书
小学生爱国演讲稿
2014/04/25 职场文书
禁毒宣传工作方案
2014/05/23 职场文书
大学生第一学年自我鉴定
2014/09/12 职场文书
2015年世界无烟日活动方案
2015/05/04 职场文书
2019年最新版见习人员管理制度!
2019/07/08 职场文书
springboot临时文件存储目录配置方式
2021/07/01 Java/Android
MySQL 服务和数据库管理
2021/11/11 MySQL
zabbix配置nginx监控的实现
2022/05/25 Servers