python基础教程之匿名函数lambda


Posted in Python onJanuary 17, 2017

 python lambda

当我们在使用函数时,有时候,并不需要显示的定义一个函数,我们可以使用匿名函数更加方便,在Python中对匿名函数也提供了支持。

比如当我们想计算两个数a,b之和时,即f(a,b) = a + b。我们可以有两种方法完成,第一种就是显示的定义一个函数f(x,y),然后将参数传进去得到结果。第二种方式就是使用匿名函数了。

f = lambda x,y:x+y 
>>>f(1,2) 
3

匿名函数lambda x,y:x+y实际上就是:

def f(x, y): 
  return x + y

在python中关键字lambda表示匿名函数,冒号前面的x,y表示的时函数的参数,匿名函数的语法就是:

lambda [arg1[,arg2,arg3....argN]]:expression

lambda语句中,冒号前是参数,可以有多个,用逗号隔开,冒号右边的表达式的结果作为匿名函数的返回值。

匿名函数有一个限制就是只能有一个表达式,不用写return,匿名函数的返回值就是该表达式的结果。用匿名函数有个好处,因为函数没有名字,不必担心函数名冲突。此外,匿名函数也是一个函数对象,也可以把匿名函数赋值给一个变量,再利用变量来调用该函数:

>>> f = lambda x: x * x 
>>> f 
<function <lambda> at 0x101c6ef28> 
>>> f(5) 
25

同时,也可以把匿名函数作为函数的返回值返回,比如:

def build(x, y): 
  return lambda: x + y

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Python 相关文章推荐
Python中用Ctrl+C终止多线程程序的问题解决
Mar 30 Python
Windows上使用virtualenv搭建Python+Flask开发环境
Jun 07 Python
python正则表达式re之compile函数解析
Oct 25 Python
PyQt5+requests实现车票查询工具
Jan 21 Python
Django之无名分组和有名分组的实现
Apr 16 Python
python实现点击按钮修改数据的方法
Jul 17 Python
python实现windows倒计时锁屏功能
Jul 30 Python
使用python批量修改文件名的方法(视频合并时)
Mar 24 Python
Python+Django+MySQL实现基于Web版的增删改查的示例代码
May 13 Python
用60行代码实现Python自动抢微信红包
Feb 04 Python
python3.7.2 tkinter entry框限定输入数字的操作
May 22 Python
Python自动化实战之接口请求的实现
May 30 Python
python基础教程之Filter使用方法
Jan 17 #Python
python正则分析nginx的访问日志
Jan 17 #Python
你应该知道的python列表去重方法
Jan 17 #Python
Python实现FTP上传文件或文件夹实例(递归)
Jan 16 #Python
Python Socket传输文件示例
Jan 16 #Python
python批量添加zabbix Screens的两个脚本分享
Jan 16 #Python
python一键升级所有pip package的方法
Jan 16 #Python
You might like
php缓存技术介绍
2006/11/25 PHP
php基于str_pad实现卡号不足位数自动补0的方法
2014/11/12 PHP
PHP连接MSSQL方法汇总
2016/02/05 PHP
javascript 命名规则 变量命名规则
2010/02/25 Javascript
JavaScript实现统计文本框Textarea字数增强用户体验
2012/12/21 Javascript
利用Javascript判断操作系统的类型实现不同操作系统下的兼容性
2013/01/29 Javascript
JQuery动画animate的stop方法使用详解
2014/05/09 Javascript
JavaScript插件化开发教程 (一)
2015/01/27 Javascript
微信小程序 scroll-view隐藏滚动条详解
2017/01/16 Javascript
bootstrap treeview 扩展addNode方法动态添加子节点的方法
2017/11/21 Javascript
关于引入vue.js 文件的知识点总结
2020/01/28 Javascript
微信小程序实现多行文字滚动
2020/11/18 Javascript
[07:31]DOTA2卡尔工作室 英雄介绍主宰篇
2013/06/25 DOTA
[07:27]DOTA2卡尔工作室 英雄介绍水晶室女篇
2013/06/21 DOTA
[01:32]2016国际邀请赛中国区预选赛IG战队首日赛后采访
2016/06/27 DOTA
[57:59]完美世界DOTA2联赛循环赛 Ink Ice vs LBZS BO2第一场 11.05
2020/11/05 DOTA
Python使用logging结合decorator模式实现优化日志输出的方法
2016/04/16 Python
python中利用await关键字如何等待Future对象完成详解
2017/09/07 Python
批量将ppt转换为pdf的Python代码 只要27行!
2018/02/26 Python
python 判断网络连通的实现方法
2018/04/22 Python
深入学习python多线程与GIL
2019/08/26 Python
Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n]
2020/02/13 Python
在jupyter notebook 添加 conda 环境的操作详解
2020/04/10 Python
Iconfont(矢量图标)+iconmoon(图标svg互转)配合javascript实现社交分享系统
2020/04/21 Python
蒂芙尼澳大利亚官方网站:Tiffany&Co. Australia
2017/08/27 全球购物
Sunglasses Shop丹麦:欧洲第一的太阳镜在线销售网站
2017/10/22 全球购物
JACK & JONES瑞典官方网站:杰克琼斯欧式风格男装
2017/12/23 全球购物
英格兰足协官方商店:England Store
2019/07/12 全球购物
2014年最新学习全国两会精神心得
2014/03/17 职场文书
乔迁之喜主持词
2014/03/27 职场文书
2014年乡镇人大工作总结
2014/11/25 职场文书
2014年政协委员工作总结
2014/12/01 职场文书
创业计划书之香辣虾火锅
2019/09/23 职场文书
Golang二维切片初始化的实现
2021/04/08 Golang
Mysql数据库索引面试题(程序员基础技能)
2021/05/31 MySQL
MySQL生成千万测试数据以及遇到的问题
2022/08/05 MySQL