python lambda函数两个列表大小关系_python学习 -- operator.itemgetter(), list.sort/sorted 以及lambda函数...
Python 中有非常方便高效的排序函数,下面主要介绍如何sort/sorted对list,dict进行排序。
1. 用list.sort /sorted 对list of tuples中第二个值进行排序
>>> import operator
>>> a=[(‘a‘,3),(‘b‘,2),(‘c‘,1)]
>>> import operator
>>> l=[(‘a‘,3),(‘b‘,2),(‘c‘,1)]
>>> l.sort(key=operator.itemgetter(1))
>>> l
[(‘c‘, 1), (‘b‘, 2), (‘a‘, 3)]
>>> sorted(l, key=operator.itemgetter(1))
[(‘c‘, 1), (‘b‘, 2), (‘a‘, 3)]
>>> sorted(l, key=operator.itemgetter(0))
[(‘a‘, 3), (‘b‘, 2), (‘c‘, 1)]
list.sort 和sorted 的区别:sort是list序列的一个方法,而sorted是内建函数
list.sort: 没有返回值,而且 sort作为序列的内部函数,调用完后会对调用的序列进行排序
sorted:函数不改变参数,并返回排好序的序列副本
在python开发文档中对sort和sorted都有详细介绍,也可以调用help函数来查看两者的区别
>>>help(list.sort)
Help on method_descriptor:
sort(...)
L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE*
>>>help(sorted)
Help on built-in function sorted inmodule builtins:
sorted(iterable,/, *, key=None, reverse=False)
Return a new list containing all itemsfrom the iterable inascending order.
A custom key function can be supplied to customize the sort order,andthe
reverse flag can be set to request the resultin descending order.
2. 除了用operator之外我们也可以用lambda
>>> l.sort(key=lambda x:x[1])>>>l
[(‘c‘, 1), (‘b‘, 2), (‘a‘, 3)]
3. 用sorted来对ditionary进行排序
>>> l = {‘a‘: 3,"b": 2,"c": 1}
>>> sl_key = sorted(l.items()) #Sort by key
>>> sl_key
[(‘a‘, 3), (‘b‘, 2), (‘c‘, 1)]
>>> sl_value = sorted(l.items(),key=lambda x:x[1]) #Sort by value
>>> sl_value
[(‘c‘, 1), (‘b‘, 2), (‘a‘, 3)]
>>> sl_value = sorted(l.items(),key=lambda x:x[1],
reverse=True) #Sort by value Backwards
>>> sl_value
[(‘a‘, 3), (‘b‘, 2), (‘c‘, 1)]
>>> sl_value = sorted(l.items(),key=lambda x:(x[1],x[0]),
reverse=True) #Sort by value then by Key
>>> sl_value
[(‘a‘, 3), (‘b‘, 2), (‘c‘, 1)]
python lambda函数两个列表大小关系_python学习 -- operator.itemgetter(), list.sort/sorted 以及lambda函数...相关推荐
- python lambda函数两个列表大小关系_python lambda结合列表推导式?
func1 = [lambda x:x*i for i in range(10)] [f1(2) for f1 in func1] [18, 18, 18, 18, 18, 18, 18, 18, 1 ...
- python找出两个列表不同元素_python 找出两个列表的相同元素与不同元素
python 找出两个列表的相同元素与不同元素,用了以下几种方法 1. 通过set 集合 list1 = [1,2,3] list2=[2,3,4] set1 = set(list1) set2 = ...
- python中简述对象和类的关系_Python学习笔记(七)对象和类
什么是对象 Python中所有的数据都是以对象的形式存在,无论是简单的数字类型还是复杂的代码模块.在Python中,当我们想要创建属于自己的对象或者修改已有对象的行为时,才需要关注对象的内部实现细节. ...
- python字符串的方法和列表的方法_Python学习笔记字符串操作之join()和split()方法,列表转字符串,字符串转列表...
随笔记录方便自己和同路人查阅. #------------------------------------------------我是可耻的分割线--------------------------- ...
- python有哪两种表现形式小练笔_Python学习小练笔—文本进度条
1.简单文本进度条 import time scale=10 print("-----执行开始-----") for i in range(scale+1): a,b='**'*i ...
- 如何在Python中串联两个列表?
如何在Python中串联两个列表? 例: listone = [1, 2, 3] listtwo = [4, 5, 6] 预期结果: >>> joinedlist [1, 2, 3, ...
- python 两个列表比较_如何在Python中比较两个列表
python 两个列表比较 In this article, we will understand the different ways to compare two lists in Python. ...
- Python实现比较两个列表(list)范围
Python实现比较两个列表(list)范围 有一道题: 比较两个列表范围,如果包含的话,返回TRUE,否则FALSE. 详细题目如下: Create a function, this functio ...
- python比较两个列表不同部分_Python实现比较两个列表(list)范围
有一道题: 比较两个列表范围,如果包含的话,返回TRUE,否则FALSE. 详细题目如下: Create a function, this function receives two lists as ...
最新文章
- 《数字城堡》大片制作
- discuz!x2.5登录管理面板
- 命令行选项解析函数:getopt()
- 十年后 AI 是什么样?
- php系统维护,软件系统维护主要包含什么
- Hades:移动端静态分析框架
- JavaEE实战班第十二天
- Edge好用么?几条你不知道的Edge小技巧
- 细胞增殖曲线_【音频】第6章 细胞的生命历程 第1节 细胞的增殖
- SpringBoot整合springDataJPA
- OLAP-presto-大数据Week13-DAY-presto
- 博世 BMI160 6轴传感器 数据手册datasheet
- 微信小程序内容组件图标 icon
- css中鼠标手,css各种鼠标手型集合
- matlab求系统状态时间响应,MATLAB求解系统零状态响应可以调用( )函数。
- C# windows窗口应用程序切换主界面的显示内容
- es6利用Reflect实现观察者模式,并详解Reflect对象
- python爬虫-豆瓣喜剧电影评分top100的电影-小林月
- Java中的基本数据类型是哪些_java中基本数据类型有哪些
- 漫画软件开发:EasyComic
热门文章
- Golang手册与常用包手册
- python是谁维护的_Python 库从开发到维护
- html表单php连接mysql数据库,PHP 连接MySQL数据库
- xposed框架在分机安装失败_免root用Xposed框架!安卓用户一定要学会
- arcgis 分区 属性值_如何使用ArcGIS计算分区河流(管线)总长度
- devc代码补全没效果_从零开始写文本编辑器(二十八):自动补全(上)
- c++中有表示正无穷的数吗_阅读:贯穿编程人生CSAPP[2]信息表示
- a标签传值到另一个页面_Vue组件传值与通信集合
- linux内核挂载nfs,Linux 挂载NFS文件系统
- 【java】带时区的时间格式化