python基础教程之lambda表达式使用方法


Posted in Python onFebruary 12, 2014

Python中,如果函数体是一个单独的return expression语句,开发者可以选择使用特殊的lambda表达式形式替换该函数:

lambda parameters: expression

lambda表达式相当于函数体为单个return语句的普通函数的匿名函数。请注意,lambda语法并没有使用return关键字。开发者可以在任何可以使用函数引用的位置使用lambda表达式。在开发者想要使用一个简单函数作为参数或者返回值时,使用lambda表达式是很方便的。下面是使用lambda表达式作为内置filter函数的一个参数的示例:

aList = [1, 2, 3, 4, 5, 6, 7, 8, 9]
low = 3
high = 7
filter(lambda x, l=low, h=high: h>x>l, aList) # returns: [4, 5, 6]

作为另外一种选择,开发者还可以使用一个可以为函数变量命名的本地def语句。然后,开发者可以使用这个名称作为参数或返回值。下面是使用本地def语句的相同filter示例:

aList = [1, 2, 3, 4, 5, 6, 7, 8, 9]
low = 3
high = 7
def within_bounds(value, l=low, h=high):
return h>value>l filter(within_bounds, aList) #
returns: [4, 5, 6]

因为lambda表达式只是偶尔有用,许多Python用户更喜欢使用def, def要更通用些,如果开发者为函数选择了一个比较合理的名称,会让代码具有更好的可读性。

Python 相关文章推荐
详解在Python和IPython中使用Docker
Apr 28 Python
详解Swift中属性的声明与作用
Jun 30 Python
Python进行数据提取的方法总结
Aug 22 Python
用Python实现命令行闹钟脚本实例
Sep 05 Python
通过Python实现自动填写调查问卷
Sep 06 Python
python数据预处理之数据标准化的几种处理方式
Jul 17 Python
用Pelican搭建一个极简静态博客系统过程解析
Aug 22 Python
对django layer弹窗组件的使用详解
Aug 31 Python
Python中的list与tuple集合区别解析
Oct 12 Python
Python Handler处理器和自定义Opener原理详解
Mar 05 Python
Jupyter notebook设置背景主题,字体大小及自动补全代码的操作
Apr 13 Python
python dict乱码如何解决
Jun 07 Python
Python的print用法示例
Feb 11 #Python
python中的yield使用方法
Feb 11 #Python
python重试装饰器示例
Feb 11 #Python
python网络爬虫采集联想词示例
Feb 11 #Python
python基础教程之实现石头剪刀布游戏示例
Feb 11 #Python
python使用递归解决全排列数字示例
Feb 11 #Python
python基础教程之popen函数操作其它程序的输入和输出示例
Feb 10 #Python
You might like
在 Laravel 项目中使用 webpack-encore的方法
2019/07/21 PHP
PHP7 其他语言层面的修改
2021/03/09 PHP
基于jquery点击自以外任意处,关闭自身的代码
2012/02/10 Javascript
JS中 用户登录系统的解决办法
2013/04/15 Javascript
jQuery 快速结束当前正在执行的动画
2013/11/20 Javascript
javascript继承机制实例详解
2014/11/20 Javascript
将JavaScript的jQuery库中表单转化为JSON对象的方法
2015/11/17 Javascript
跟我学习javascript的定时器
2015/11/19 Javascript
全面解析Bootstrap手风琴效果
2020/04/17 Javascript
基于JavaScript实现通用tab选项卡(通用性强)
2016/01/07 Javascript
JavaScript判断变量是否为数组的方法(Array)
2016/02/24 Javascript
JS实现Ajax的方法分析
2016/12/20 Javascript
使用openSpeDiv方法实现Ecshop登录弹窗框效果
2017/03/13 Javascript
浅谈Vuejs Prop基本用法
2017/08/17 Javascript
Angular2 组件交互实例详解
2017/08/24 Javascript
JavaScript设计模式之策略模式实现原理详解
2020/05/29 Javascript
vue 项目软键盘回车触发搜索事件
2020/09/09 Javascript
原生js生成图片验证码
2020/10/11 Javascript
python自动化测试之setUp与tearDown实例
2014/09/28 Python
pycharm debug功能实现跳到循环末尾的方法
2018/11/29 Python
Python制作exe文件简单流程
2019/01/24 Python
浅谈tensorflow中张量的提取值和赋值
2020/01/19 Python
tensorflow 模型权重导出实例
2020/01/24 Python
Python虚拟环境virtualenv创建及使用过程图解
2020/12/08 Python
Baracuta官方网站:Harrington夹克,G9,G4,G10等
2018/03/06 全球购物
竞聘演讲稿范文
2014/01/12 职场文书
《一本男孩子必读的书》教学反思
2014/02/19 职场文书
2014学雷锋活动心得体会
2014/03/10 职场文书
演讲稿格式
2014/04/30 职场文书
优秀党务工作者事迹材料
2014/05/07 职场文书
党的群众路线对照检查材料
2014/08/27 职场文书
婚礼父母答谢词
2015/01/04 职场文书
HR必备:超全面的薪酬待遇管理方案!
2019/07/12 职场文书
如何在Python中创建二叉树
2021/03/30 Python
gojs实现蚂蚁线动画效果
2022/02/18 Javascript
Python 一键获取电脑浏览器的账号密码
2022/05/11 Python