在Python中使用lambda高效操作列表的教程


Posted in Python onApril 24, 2015

介绍
lambda

Python用于支持将函数赋值给变量的一个操作符 默认是返回的,所以不用再加return关键字,不然会报错

result = lambda x: x * x
result(2) # return 4
map()/filter()/reduce()

需要两个参数,第一个是一个处理函数,第二个是一个序列(list,tuple,dict)
map()

将序列中的元素通过处理函数处理后返回一个新的列表
filter()

将序列中的元素通过函数过滤后返回一个新的列表
reduce()

将序列中的元素通过一个二元函数处理返回一个结果
将上面三个函数和lambda结合使用

li = [1, 2, 3, 4, 5]
# 序列中的每个元素加1
map(lambda x: x+1, li) # [2,3,4,5,6]

# 返回序列中的偶数
filter(lambda x: x % 2 == 0, li) # [2, 4]

# 返回所有元素相乘的结果
reduce(lambda x, y: x * y, li) # 1*2*3*4*5 = 120

sorted() 结合lambda对列表进行排序

sorted 用于列表的排序,比列表自带的更加智能 有两个列表,每个列表中都有一个字典([{},{}])要求将两个这样的列表合并后按照时间排序, 两个列表中的时间为了能够通过json输出已经由时间格式转变为字符串格式.字段名为 sort_time 现在将他们按照倒序排列
sorted 的用法

sorted(iterable, cmp=None, key=None, reverse=False) --> new sorted list terable:是可迭代类型; cmp:用于比较的函数,比较什么由key决定,有默认值,迭代集合中的一项; key:用列表元素的某个属性和函数进行作为关键字,有默认值,迭代集合中的一项; reverse:排序规则. reverse = True 或者 reverse = False,有默认值。 * 返回值:是一个经过排序的可迭代类型,与iterable一样。
sorted()结合lambda对可迭代类型用sort_time排序

sorted(data, key=lambda d: d['sort_time'], reverse=True)
Python 相关文章推荐
使用基于Python的Tornado框架的HTTP客户端的教程
Apr 24 Python
简要讲解Python编程中线程的创建与锁的使用
Feb 28 Python
python爬虫框架scrapy实战之爬取京东商城进阶篇
Apr 24 Python
Python、PyCharm安装及使用方法(Mac版)详解
Apr 28 Python
图解Python变量与赋值
Apr 03 Python
python使用Matplotlib画条形图
Mar 25 Python
详解python调用cmd命令三种方法
Jul 08 Python
pandas的相关系数与协方差实例
Dec 27 Python
python 获取当前目录下的文件目录和文件名实例代码详解
Mar 10 Python
python Django 反向访问器的外键冲突解决
May 20 Python
python集合能干吗
Jul 19 Python
Python写情书? 10行代码展示如何把情书写在她的照片里
Apr 21 Python
使用Python的判断语句模拟三目运算
Apr 24 #Python
Python的字典和列表的使用中一些需要注意的地方
Apr 24 #Python
整理Python最基本的操作字典的方法
Apr 24 #Python
编写Python脚本使得web页面上的代码高亮显示
Apr 24 #Python
Python UnicodeEncodeError: 'gbk' codec can't encode character 解决方法
Apr 24 #Python
Python3.x中自定义比较函数
Apr 24 #Python
使用Python脚本将绝对url替换为相对url的教程
Apr 24 #Python
You might like
PHP4之真OO
2006/10/09 PHP
Laravel框架中队列和工作(Queues、Jobs)操作实例详解
2020/04/06 PHP
通过JAVASCRIPT读取ASP设定的COOKIE
2007/02/15 Javascript
jQuery入门知识简介
2010/03/04 Javascript
javascript通过class来获取元素实现代码
2013/02/20 Javascript
JS+CSS 制作的超级简单的下拉菜单附图
2013/11/22 Javascript
JavaScript中的ubound函数使用实例
2014/11/04 Javascript
jquery实现标签支持图文排列带上下箭头按钮的选项卡
2015/03/14 Javascript
JavaScript实现显示函数调用堆栈的方法
2016/04/21 Javascript
JavaScript Promise 用法
2016/06/14 Javascript
javascript日期比较方法实例分析
2016/06/17 Javascript
fullpage.js全屏滚动插件使用实例
2016/09/06 Javascript
JavaScript使用Range调色及透明度实例
2016/09/25 Javascript
JavaScript日期对象(Date)基本用法示例
2017/01/18 Javascript
详解windows下vue-cli及webpack 构建网站(三)使用组件
2017/06/17 Javascript
vue中页面跳转拦截器的实现方法
2017/08/23 Javascript
JavaScript数据类型的存储方法详解
2017/08/25 Javascript
jQuery实现的下雪动画效果示例【附源码下载】
2018/02/02 jQuery
详解vue项目中实现图片裁剪功能
2019/06/07 Javascript
[01:02:55]CHAOS vs Mineski 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
python中的__slots__使用示例
2015/02/26 Python
Django与JS交互的示例代码
2017/08/23 Python
python去除文件中重复的行实例
2018/06/29 Python
如何使用Flask-Migrate拓展数据库表结构
2019/07/24 Python
Python 切分数组实例解析
2019/11/07 Python
django数据模型on_delete, db_constraint的使用详解
2019/12/24 Python
python中常见错误及解决方法
2020/06/21 Python
美特斯邦威官方商城:邦购网
2016/10/13 全球购物
北美三大旅游网站之一:Travelocity
2017/08/12 全球购物
DJI美国:消费类无人机领域的领导者
2018/04/27 全球购物
学生会竞选演讲稿纪检部
2014/08/25 职场文书
开展批评与自我批评发言材料
2014/10/17 职场文书
小学班主任个人总结
2015/03/03 职场文书
车间班组长竞聘书
2015/09/15 职场文书
简短清晨问候语
2015/11/10 职场文书
go xorm框架的使用
2021/05/22 Golang