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 相关文章推荐
浅谈django开发者模式中的autoreload是如何实现的
Aug 18 Python
Python使用Matplotlib模块时坐标轴标题中文及各种特殊符号显示方法
May 04 Python
使用Python快速搭建HTTP服务和文件共享服务的实例讲解
Jun 04 Python
TensorFlow实现Logistic回归
Sep 07 Python
详解将Django部署到Centos7全攻略
Sep 26 Python
在Python中字典根据多项规则排序的方法
Jan 21 Python
python 读取修改pcap包的例子
Jul 23 Python
django使用haystack调用Elasticsearch实现索引搜索
Jul 24 Python
Python的pygame安装教程详解
Feb 10 Python
解决使用python print打印函数返回值多一个None的问题
Apr 09 Python
Eclipse配置python默认头过程图解
Apr 26 Python
Pycharm Git 设置方法
Sep 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
espresso double下 咖啡粉超细时 饼压力对咖啡的影响
2021/03/03 冲泡冲煮
php与java通过socket通信的实现代码
2013/10/21 PHP
php学习笔记之mb_strstr的基本使用
2018/02/03 PHP
js截取函数(indexOf,join等)
2010/09/01 Javascript
JQuery扩展插件Validate—4设置错误提示的样式
2011/09/05 Javascript
javascript之typeof、instanceof操作符使用探讨
2013/05/19 Javascript
使用CSS和jQuery模拟select并附提交后取得数据的代码
2013/10/18 Javascript
详解jQuery插件开发中的extend方法
2013/11/19 Javascript
js实现俄罗斯方块小游戏分享
2014/01/31 Javascript
jQuery仿淘宝网产品品牌隐藏与显示效果
2015/09/01 Javascript
原生js实现新闻列表展开/收起全文功能
2017/01/20 Javascript
D3.js中强制异步文件读取同步的几种方法
2017/02/06 Javascript
深入研究jQuery图片懒加载 lazyload.js使用方法
2017/08/16 jQuery
JS生成随机打乱数组的方法示例
2017/12/23 Javascript
angular2组件中定时刷新并清除定时器的实例讲解
2018/08/31 Javascript
layer.prompt使文本框为空的情况下也能点击确定的方法
2019/09/24 Javascript
详解node.js 事件循环
2020/07/22 Javascript
VUE UPLOAD 通过ACTION返回上传结果操作
2020/09/07 Javascript
[42:25]2018DOTA2亚洲邀请赛 4.5 淘汰赛 LGD vs Liquid 第三场
2018/04/06 DOTA
Python爬取当当、京东、亚马逊图书信息代码实例
2017/12/09 Python
python实现守护进程、守护线程、守护非守护并行
2018/05/05 Python
Python退火算法在高次方程的应用
2018/07/26 Python
python遍历小写英文字母的方法
2019/01/02 Python
PyCharm在新窗口打开项目的方法
2019/01/17 Python
python3实现猜数字游戏
2020/12/07 Python
Python数据分析pandas模块用法实例详解
2019/11/20 Python
在python中求分布函数相关的包实例
2020/04/15 Python
python如何爬取动态网站
2020/09/09 Python
计算机软件个人的自荐信范文
2013/12/01 职场文书
汽车专业学生自我评价
2014/01/19 职场文书
学生自我评语
2015/01/04 职场文书
公路施工安全责任书
2015/05/08 职场文书
硕士毕业答辩开场白
2015/05/27 职场文书
2019年共青团工作条例最新版
2019/11/12 职场文书
Feign调用全局异常处理解决方案
2021/06/24 Java/Android
解决 redis 无法远程连接
2022/05/15 Redis