python中lambda函数是什么意思(python ---lambda匿名函数介绍)
python中lambda函数是什么意思
python ---lambda匿名函数介绍lambda特性:“一个语法,三个特性,四个用法”
一个语法
在Python中,lambda的语法是唯一的。其形式如下:
lambda argument_list: expression
其中,lambda是Python预留的关键字,argument_list和expression由用户自定义。具体介绍如下。
1.这里的argument_list是参数列表。它的结构与Python中函数(function)的参数列表是一样的。具体来说,argument_list可以有非常多的形式。例如:
|
a,b a = 1 ,b = 2 * args * * kwargs a,b = 1 , * args |
这里的lambda argument_list: expression表示的是一个函数。这个函数叫做lambda函数。
三个特性
lambda函数有如下特性:
- lambda函数是匿名的:所谓匿名函数,通俗地说就是没有名字的函数。lambda函数没有名字。
- lambda函数有输入和输出:输入是传入到参数列表argument_list的值,输出是根据表达式expression计算得到的值。
- lambda函数一般功能简单:单行expression决定了lambda函数不可能完成复杂的逻辑,只能完成非常简单的功能。由于其实现的功能一目了然,甚至不需要专门的名字来说明。
下面是lambda函数实例:
- lambda:None;函数没有输入参数,输出是None
- lambda **kwargs: 1;输入是任意键值对参数,输出是1
- lambda x, y: x*y;函数输入是x和y,输出是它们的和x+y
- lambda *args: sum(args); 输入是任意个数的参数,输出是它们的和(隐性要求是输入参数必须能够进行加法运算)
四个用法
由于lambda语法是固定的,其本质只有一种用法,那就是定义一个lambda函数。实际中,根据这个lambda函数应用场景的不同,可将lambda函数用法扩展为以下几种:
将lambda函数赋值给其他函数,从而将其他函数用该lambda函数替换。
例如,为了把标准库time中的函数sleep的功能屏蔽(Mock),我们可以在程序初始化时调用:time.sleep=lambda x:None。这样,在后续代码中调用time库的sleep函数将不会执行原有的功能。例如,执行time.sleep(3)时,程序不会休眠3秒钟,而是什么都不做。
部分Pytho内置函数接收函数做参数,典型的内置函数有这些:
- map函数。此时lambda函数用于指定对列表中每一个元素的共同操作。例如map(lambda x: x%2, range(3)),其结果[0,1,0 ]。
- filter函数。此时lambda函数用于指定过滤列表元素的条件。例如filter(lambda x: x % 3 == 0, [1, 2, 3])指定将列表[1,2,3]中能够被3整除的元素过滤出来,其结果是[3]
- sorted函数。此时lambda函数用于指定对列表中所有元素进行排序的准则。例如sorted([1, 2, 3, 4, 5, 6, 7, 8, 9], key=lambda x: abs(5-x))将列表[1, 2, 3, 4, 5, 6, 7, 8, 9]按照元素与5距离从小到大进行排序,其结果是[5, 4, 6, 3, 7, 2, 8, 1, 9]。
- reduce函数。此时lambda函数用于指定列表中两两相邻元素的结合条件。例如reduce(lambda a, b: '{}, {}'.format(a, b), [1, 2, 3, 4, 5, 6, 7, 8, 9])将列表 [1, 2, 3, 4, 5, 6, 7, 8, 9]中的元素从左往右两两以逗号分隔的字符的形式依次结合起来,其结果是'1, 2, 3, 4, 5, 6, 7, 8, 9'。
以上所述是小编给大家介绍的python lambda匿名函数详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对开心学习网网站的支持!
原文链接:https://blog.csdn.net/Mr_XiaoZhang/article/details/86484231
- python如何遍历列表并提取(Python同步遍历多个列表的示例)
- python如何安装requests模块(Python常用模块之requests模块用法分析)
- 如何用python做一个弹窗(python实现祝福弹窗效果)
- 笨办法学python3目录(如何愉快地迁移到 Python 3)
- python读取txt文件每一行数据(python读取txt文件并取其某一列数据的示例)
- python的模块与包与库(Python 中包/模块的 `import` 操作代码)
- python plot绘图(python使用Plotly绘图工具绘制气泡图)
- python中的pandas功能(Python常见的pandas用法demo示例)
- python如何判断是否为回文数(对python判断是否回文数的实例详解)
- pythonmatplotlib怎么画区域(python matplotlib实现双Y轴的实例)
- python开发的独立商城(python实现电子产品商店)
- python操作sql server数据库(Python 数据库操作 SQLAlchemy的示例代码)
- python爬百度api有次数限制吗(对python借助百度云API对评论进行观点抽取的方法详解)
- python time模块记录时间(Python Datetime模块和Calendar模块用法实例分析)
- python爬虫入门自学(自学python爬虫的建议和周期预算)
- pythonredis使用场景(python redis 删除key脚本的实例)
- 清华大学难考吗(清华大学考研录取分数线)
- 观花盆栽佛肚竹盆景制作及养护(观花盆栽佛肚竹盆景制作及养护)
- 春天养佛肚竹,做好这几件事,叶绿根壮寓意好 越养越旺家(春天养佛肚竹做好这几件事)
- 律界衣品最好,时尚圈学识数高,41岁的Amal堪称现实版的傲骨贤妻(时尚圈学识数高)
- 刘智泰确认出演《Good Wife》 担纲男一号(刘智泰确认出演Good)
- 《傲骨之战》剧终 律政女魔头Diane,为什么是大女主天花板(傲骨之战剧终律政女魔头Diane)
热门推荐
- python 迭代对象必须实现哪些方法(详解python之heapq模块及排序操作)
- docker部署php本地开发环境(CentOS7环境下使用Docker搭建PHP运行环境的过程详解)
- sqlserver数据库实时同步(SQL Server实时同步更新远程数据库遇到的问题小结)
- python最火开源项目(5月份Github上Python开源项目排行)
- python如何编写判断正负数程序(Python实现判断一个整数是否为回文数算法示例)
- with(nolock)的用法
- 工作如何分轻重缓急
- 腾讯云linux服务器怎么用(详解在Linux环境中登陆腾讯云的Linux服务器的步骤)
- css3行内样式表图解(详解css3自定义滚动条样式写法)
- thinkphp5单例原理(Thinkphp5框架简单实现钩子Hook行为的方法示例)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9