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运行的17个时新手常见错误小结
Aug 07 Python
使用Python编写一个简单的tic-tac-toe游戏的教程
Apr 16 Python
python实现域名系统(DNS)正向查询的方法
Apr 19 Python
django的ORM模型的实现原理
Mar 04 Python
Python中的asyncio代码详解
Jun 10 Python
python3+PyQt5 数据库编程--增删改实例
Jun 17 Python
python 计算平均平方误差(MSE)的实例
Jun 29 Python
numpy.ndarray 实现对特定行或列取值
Dec 05 Python
AUC计算方法与Python实现代码
Feb 28 Python
python如何导入依赖包
Jul 13 Python
Scrapy基于scrapy_redis实现分布式爬虫部署的示例
Sep 29 Python
基于PyInstaller各参数的含义说明
Mar 04 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
DOTA2【瓜皮时刻】Vol.91 RTZ山史最惨“矿难”
2021/03/05 DOTA
了解Joomla 这款来自国外的php网站管理系统
2010/03/11 PHP
百度实时推送api接口应用示例
2014/10/21 PHP
php获取用户真实IP和防刷机制的实例代码
2018/11/28 PHP
javascript处理table表格的代码
2010/12/06 Javascript
面向对象的Javascript之二(接口实现介绍)
2012/01/27 Javascript
js Math 对象的方法
2013/09/01 Javascript
举例详解Python中smtplib模块处理电子邮件的使用
2015/06/24 Javascript
jQuery实现点击小图显示大图代码分享
2015/08/25 Javascript
JS、jQuery中select的用法详解
2016/04/21 Javascript
AngularJS 过滤器的简单实例
2016/07/27 Javascript
微信小程序 Page()函数详解
2016/10/17 Javascript
详解springmvc 接收json对象的两种方式
2016/12/06 Javascript
JS自动生成动态HTML验证码页面
2017/06/14 Javascript
inner join 内联与left join 左联的实例代码
2017/09/18 Javascript
详解javascript中的Error对象
2019/04/25 Javascript
详解package.json版本号规则
2019/08/01 Javascript
Vue实现购物车实例代码两则
2020/05/30 Javascript
python将多个文本文件合并为一个文本的代码(便于搜索)
2011/03/13 Python
Python提取网页中超链接的方法
2016/09/18 Python
Python实现PS图像调整黑白效果示例
2018/01/25 Python
Python使用numpy实现BP神经网络
2018/03/10 Python
python获取当前目录路径和上级路径的实例
2018/04/26 Python
python3学生名片管理v2.0版
2018/11/29 Python
python 图像平移和旋转的实例
2019/01/10 Python
Python+OpenCV图片局部区域像素值处理改进版详解
2019/01/23 Python
Python实现读取txt文件中的数据并绘制出图形操作示例
2019/02/26 Python
Python字典常见操作实例小结【定义、添加、删除、遍历】
2019/10/25 Python
HTML5打开本地app应用的方法
2016/03/31 HTML / CSS
瑞士领先的网上超市:LeShop.ch
2018/11/14 全球购物
四川internet信息高速公路(C#)笔试题
2012/02/29 面试题
医务工作者先进事迹材料
2014/01/26 职场文书
商务日语专业自荐信
2014/04/17 职场文书
单位单身证明样本
2014/10/11 职场文书
社区综治工作汇报
2014/10/27 职场文书
2015年公务员工作总结
2015/04/24 职场文书