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私有属性和方法实例分析
Jan 15 Python
Python中将字典转换为列表的方法
Sep 21 Python
Python基础练习之用户登录实现代码分享
Nov 08 Python
浅谈Django自定义模板标签template_tags的用处
Dec 20 Python
Python3实现的简单验证码识别功能示例
May 02 Python
对numpy.append()里的axis的用法详解
Jun 28 Python
解决django后台样式丢失,css资源加载失败的问题
Jun 11 Python
Pycharm保存不能自动同步到远程服务器的解决方法
Jun 27 Python
Python使用matplotlib 画矩形的三种方式分析
Oct 31 Python
np.newaxis 实现为 numpy.ndarray(多维数组)增加一个轴
Nov 30 Python
python3+opencv生成不规则黑白mask实例
Feb 19 Python
Python用tkinter实现自定义记事本的方法详解
Mar 31 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防注
2007/01/15 PHP
php array_search() 函数使用
2010/04/13 PHP
php 定义404页面的实现代码
2012/11/19 PHP
destoon调用自定义模板及样式的公告栏
2014/06/21 PHP
PHP Filter过滤器全面解析
2016/08/09 PHP
php使用glob函数遍历文件和目录详解
2016/09/23 PHP
jquery tab插件制作实现代码
2010/06/22 Javascript
基于jQuery的倒计时插件代码
2011/05/07 Javascript
javascript采用数组实现tab菜单切换效果
2012/12/12 Javascript
javascript教程:关于if简写语句优化的方法
2014/05/17 Javascript
jQuery多条件筛选如何实现
2015/11/04 Javascript
深入浅出ES6之let和const命令
2016/08/25 Javascript
AngularJS中run方法的巧妙运用
2017/01/04 Javascript
jQuery中 bind的用法简单介绍
2017/02/13 Javascript
vue中的非父子间的通讯问题简单的实例代码
2017/07/19 Javascript
详解vue 模版组件的三种用法
2017/07/21 Javascript
php register_shutdown_function函数详解
2017/07/23 Javascript
详解Node 定时器
2018/02/26 Javascript
详解vue-cli+element-ui树形表格(多级表格折腾小计)
2019/04/17 Javascript
vue中img src 动态加载本地json的图片路径写法
2019/04/25 Javascript
原生js通过一行代码实现简易轮播图
2019/06/05 Javascript
vue-router之实现导航切换过渡动画效果
2019/10/31 Javascript
vue-cli+webpack项目打包到服务器后,ttf字体找不到的解决操作
2020/08/28 Javascript
html5以及jQuery实现本地图片上传前的预览代码实例讲解
2021/03/01 jQuery
Python中的迭代器漫谈
2015/02/03 Python
复习Python中的字符串知识点
2015/04/14 Python
浅谈Python对内存的使用(深浅拷贝)
2018/01/17 Python
Python编程argparse入门浅析
2018/02/07 Python
一看就懂得Python的math模块
2018/10/21 Python
如何分离django中的媒体、静态文件和网页
2019/11/12 Python
canvas学习和滤镜实现代码
2018/08/22 HTML / CSS
学校后勤人员职责
2013/12/27 职场文书
感恩寄语大全
2014/04/11 职场文书
治超工作实施方案
2014/05/04 职场文书
人事行政部各岗位职责说明书!
2019/07/15 职场文书
通过T-SQL语句创建游标与实现数据库加解密功能
2022/03/16 SQL Server