python中lambda()的用法


Posted in Python onNovember 16, 2017

在C++11和C#中都有匿名函数的存在。下面看看在python中匿名函数的使用。

1.lambda只是一个表达式,函数体比def简单很多。

2.lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。

3.lambda表达式是起到一个函数速写的作用。允许在代码内嵌入一个函数的定义。

例1.定义一个lambda表达式,求三个数的和

# -*- coding: UTF-8 -*-
f = lambda x,y,z:x + y + z

print f(1,2,3)
print f(4,5,6)

输出:
6
15

例2.用lambda表达式求n的阶乘

# -*- coding: UTF-8 -*-
n = 5
print reduce(lambda x,y:x*y,range(1,n+1))

输出:120

4.lambda表达式也可以用在def函数中

# -*- coding: UTF-8 -*-

def action(x):
  return lambda y:x + y
a = action(2)
print a(22)

输出:24

这里定义了一个action函数,返回了一个lambda表达式。其中lambda表达式获取到了上层def作用域的变量名x的值。

a是action函数的返回值,a(22),即是调用了action返回的lambda表达式。

这里也可以把def直接写成lambda形式。如下

# -*- coding: UTF-8 -*-

b = lambda x:lambda y:x + y
a = b(3)
print a(2)
print (b(2))(2)

输出:
5
4

好了这篇文章就结束到这了,需要的朋友可以看下面的相关内容

Python 相关文章推荐
Python 3中的yield from语法详解
Jan 18 Python
基于python中staticmethod和classmethod的区别(详解)
Oct 24 Python
解决python报错MemoryError的问题
Jun 26 Python
解决Pandas的DataFrame输出截断和省略的问题
Feb 08 Python
docker django无法访问redis容器的解决方法
Aug 21 Python
PyCharm下载和安装详细步骤
Dec 17 Python
Python操作注册表详细步骤介绍
Feb 05 Python
Python字典添加,删除,查询等相关操作方法详解
Feb 07 Python
如何使用PyCharm将代码上传到GitHub上(图文详解)
Apr 27 Python
Python调用C语言程序方法解析
Jul 07 Python
Python扫描端口的实现
Jan 25 Python
opencv读取视频并保存图像的方法
Jun 04 Python
Python reduce()函数的用法小结
Nov 15 #Python
python简单实例训练(21~30)
Nov 15 #Python
python下10个简单实例代码
Nov 15 #Python
python获取多线程及子线程的返回值
Nov 15 #Python
python使用threading获取线程函数返回值的实现方法
Nov 15 #Python
python enumerate函数的使用方法总结
Nov 15 #Python
Python set常用操作函数集锦
Nov 15 #Python
You might like
对Session和Cookie的区分与解释
2007/03/16 PHP
邮箱正则表达式实现代码(针对php)
2013/06/21 PHP
PHP取二进制文件头快速判断文件类型的实现代码
2013/08/05 PHP
Windows下的PHP安装文件线程安全和非线程安全的区别
2014/04/23 PHP
FleaPHP框架数据库查询条件($conditions)写法总结
2016/03/19 PHP
php实现头像上传预览功能
2017/04/27 PHP
PHP小白必须要知道的php基础知识(超实用)
2017/10/10 PHP
JavaScript DOM 学习第五章 表单简介
2010/02/19 Javascript
js局部刷新页面时间具体实现
2013/07/04 Javascript
JS实现时间格式化的方式汇总
2013/10/16 Javascript
jquery实现预览提交的表单代码分享
2014/05/21 Javascript
浅谈javascript原型链与继承
2015/07/13 Javascript
Jquery实现仿京东商城省市联动菜单
2015/11/19 Javascript
详解Angularjs中的依赖注入
2016/03/11 Javascript
Bootstrap源码解读导航(6)
2016/12/23 Javascript
bootstrap输入框组件使用方法详解
2017/01/19 Javascript
Vue.js 2.0 移动端拍照压缩图片上传预览功能
2017/03/06 Javascript
浅谈mint-ui loadmore组件注意的问题
2017/11/08 Javascript
js传递数组参数到后台controller的方法
2018/03/29 Javascript
微信小程序使用swiper组件实现层叠轮播图
2018/11/04 Javascript
详解vue中this.$emit()的返回值是什么
2019/04/07 Javascript
Layer组件多个iframe弹出层打开与关闭及参数传递的方法
2019/09/25 Javascript
JavaScript 如何计算文本的行数的实现
2020/09/14 Javascript
python实现通过shelve修改对象实例
2014/09/26 Python
Python中使用装饰器和元编程实现结构体类实例
2015/01/28 Python
python高效过滤出文件夹下指定文件名结尾的文件实例
2018/10/21 Python
Python如何将图像音视频等资源文件隐藏在代码中(小技巧)
2020/02/16 Python
python实现文字版扫雷
2020/04/24 Python
Html5 语法与规则简要概述
2014/07/29 HTML / CSS
英国知名小木屋定制网站:Tiger Sheds
2020/03/06 全球购物
中东最大的在线宠物店:Dubai Pet Food
2020/06/11 全球购物
超级搞笑检讨书
2014/01/15 职场文书
情人节活动策划方案
2014/02/27 职场文书
药品营销策划方案
2014/06/15 职场文书
教师党员自我评价2015
2015/03/04 职场文书
浅谈JavaScript浅拷贝和深拷贝
2021/11/07 Javascript