在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网页请求urllib2模块简单封装代码
Feb 07 Python
python使用7z解压软件备份文件脚本分享
Feb 21 Python
python中的内置函数getattr()介绍及示例
Jul 20 Python
详解Python各大聊天系统的屏蔽脏话功能原理
Dec 01 Python
python difflib模块示例讲解
Sep 13 Python
python获取程序执行文件路径的方法(推荐)
Apr 26 Python
Python实现查找二叉搜索树第k大的节点功能示例
Jan 24 Python
pycharm配置pyqt5-tools开发环境的方法步骤
Feb 11 Python
pandas数据筛选和csv操作的实现方法
Jul 02 Python
6行Python代码实现进度条效果(Progress、tqdm、alive-progress​​​​​​​和PySimpleGUI库)
Jan 06 Python
python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图
Aug 04 Python
PYTHON 使用 Pandas 删除某列指定值所在的行
Apr 28 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
关于手调机和数调机的选择
2021/03/02 无线电
php版银联支付接口开发简明教程
2016/10/14 PHP
php中引用&的用法分析【变量引用,函数引用,对象引用】
2016/12/12 PHP
Thinkphp 在api开发中异常返回依然是html的解决方式
2019/10/16 PHP
php 使用 __call实现重载功能示例
2019/11/18 PHP
图片自动更新(说明)
2006/10/02 Javascript
Javascript 类、命名空间、代码组织代码
2011/07/31 Javascript
你的 mixin 真的兼容 ECMAScript 5 吗?
2013/04/11 Javascript
Jquery遍历checkbox获取选中项value值的方法
2014/02/13 Javascript
jquery mobile页面跳转后样式丢失js失效的解决方法
2014/09/06 Javascript
jquery图片播放浏览插件prettyPhoto使用详解
2014/12/19 Javascript
javascript函数式编程实例分析
2015/04/25 Javascript
JS实现的在线调色板实例(附demo源码下载)
2016/03/01 Javascript
javascript 继承学习心得总结
2016/03/17 Javascript
JQuery PHP图片在线裁剪实例
2020/07/27 Javascript
关于RequireJS的简单介绍即使用方法
2016/10/20 Javascript
vue2.0多条件搜索组件使用详解
2020/03/26 Javascript
详解nodejs通过代理(proxy)发送http请求(request)
2017/09/22 NodeJs
安装vue-cli的简易过程
2018/05/22 Javascript
微信小程序实现顶部导航特效
2019/01/28 Javascript
100行代码实现vue表单校验功能(小白自编)
2019/11/19 Javascript
vue的hash值原理也是table切换实例代码
2020/12/14 Vue.js
Python读写配置文件的方法
2015/06/03 Python
Python爬虫之正则表达式的使用教程详解
2018/10/25 Python
pandas读取CSV文件时查看修改各列的数据类型格式
2019/07/07 Python
tensorflow没有output结点,存储成pb文件的例子
2020/01/04 Python
python实现邮件循环自动发件功能
2020/09/11 Python
HTML5 Canvas入门学习教程
2016/03/17 HTML / CSS
送货司机岗位职责
2013/12/11 职场文书
培训自我鉴定
2014/01/31 职场文书
科级干部群众路线教育实践活动对照检查材料思想汇报
2014/09/20 职场文书
80后婚前协议书范本
2014/10/24 职场文书
安阳殷墟导游词
2015/02/10 职场文书
原告代理词范文
2015/05/25 职场文书
MySQL索引篇之千万级数据实战测试
2021/04/05 MySQL
Python还能这么玩之用Python修改了班花的开机密码
2021/06/04 Python