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获取文件后缀名及批量更新目录下文件后缀名的方法
Nov 11 Python
一个基于flask的web应用诞生 bootstrap框架美化(3)
Apr 11 Python
python TCP Socket的粘包和分包的处理详解
Feb 09 Python
详解python多线程、锁、event事件机制的简单使用
Apr 27 Python
python面试题小结附答案实例代码
Apr 11 Python
python3使用GUI统计代码量
Sep 18 Python
利用Python绘制有趣的万圣节南瓜怪效果
Oct 31 Python
Python安装依赖(包)模块方法详解
Feb 14 Python
20行Python代码实现视频字符化功能
Apr 13 Python
如何在mac下配置python虚拟环境
Jul 06 Python
Python如何定义有可选参数的元类
Jul 31 Python
pandas 数据类型转换的实现
Dec 29 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
PHP 上传文件的方法(类)
2009/07/30 PHP
PHP7之Mongodb API使用详解
2015/12/26 PHP
PHP 文件锁与进程锁的使用示例
2017/08/07 PHP
ext实现完整的登录代码
2008/08/08 Javascript
parseInt parseFloat js字符串转换数字
2010/08/01 Javascript
基于jquery封装的一个js分页
2011/11/15 Javascript
js跳转页面方法实现汇总
2014/02/11 Javascript
使用jQuery简单实现模拟浏览器搜索功能
2014/12/21 Javascript
使用原生JS实现弹出层特效
2014/12/22 Javascript
谈谈JavaScript异步函数发展历程
2015/09/29 Javascript
JS实现日期时间动态显示的方法
2015/12/07 Javascript
微信小程序-详解数据缓存
2016/11/24 Javascript
jquery中each循环的简单回滚操作
2017/05/05 jQuery
使用Javascript简单计算器
2018/11/17 Javascript
js字符串类型String常用操作实例总结
2019/07/05 Javascript
jquery.pager.js实现分页效果
2019/07/29 jQuery
关于layui的下拉搜索框异步加载数据的解决方法
2019/09/28 Javascript
vue基本使用--refs获取组件或元素的实例
2019/11/07 Javascript
[02:38]DOTA2超级联赛专访Loda 认为IG世界最强
2013/05/27 DOTA
跟老齐学Python之??碌某?? target=
2014/09/12 Python
Python3.4实现从HTTP代理网站批量获取代理并筛选的方法示例
2017/09/26 Python
详解python OpenCV学习笔记之直方图均衡化
2018/02/08 Python
python 重定向获取真实url的方法
2018/05/11 Python
pycharm 配置远程解释器的方法
2018/10/28 Python
python实现K近邻回归,采用等权重和不等权重的方法
2019/01/23 Python
python网络编程 使用UDP、TCP协议收发信息详解
2019/08/29 Python
Python 网络编程之TCP客户端/服务端功能示例【基于socket套接字】
2019/10/12 Python
python tornado修改log输出方式
2019/11/18 Python
windows环境中利用celery实现简单任务队列过程解析
2019/11/29 Python
在OpenCV里实现条码区域识别的方法示例
2019/12/04 Python
python模拟哔哩哔哩滑块登入验证的实现
2020/04/24 Python
IntelliJ 中配置 Anaconda的过程图解
2020/06/01 Python
如何利用Python写个坦克大战
2020/11/18 Python
Pycharm安装python库的方法
2020/11/24 Python
德国街头和运动文化高品质商店:BSTN Store
2017/08/26 全球购物
大学生职业规划论文
2014/01/11 职场文书