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 算法 排序实现快速排序
Jun 05 Python
python实现进程间通信简单实例
Jul 23 Python
在Python中编写数据库模块的教程
Apr 29 Python
python创建关联数组(字典)的方法
May 04 Python
Python程序中的观察者模式结构编写示例
May 27 Python
python实现Virginia无密钥解密
Mar 20 Python
pandas中read_csv的缺失值处理方式
Dec 19 Python
Python参数传递及收集机制原理解析
Jun 05 Python
python suds访问webservice服务实现
Jun 26 Python
利用python清除移动硬盘中的临时文件
Oct 28 Python
基于注解实现 SpringBoot 接口防刷的方法
Mar 02 Python
PyTorch device与cuda.device用法
Apr 03 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
深入分析php之面向对象
2013/05/15 PHP
给WordPress的编辑后台添加提示框的代码实例分享
2015/12/25 PHP
php nginx 实时输出的简单实现方法
2018/01/21 PHP
php实现的表单验证类完整示例
2019/08/13 PHP
PHP中非常有用却鲜有人知的函数集锦
2019/08/17 PHP
laravel 解决路由除了根目录其他都404的问题
2019/10/18 PHP
javascript 处理HTML元素必须避免使用的一种方法
2009/07/30 Javascript
js事件监听机制(事件捕获)总结
2014/08/08 Javascript
使用时间戳解决ie缓存的问题
2014/08/20 Javascript
JS基于cookie实现来宾统计记录访客信息的方法
2015/08/04 Javascript
Js获取图片原始宽高的实现代码
2016/05/17 Javascript
详解JavaScript中Hash Map映射结构的实现
2016/05/21 Javascript
jQuery stop()用法实例详解
2016/07/28 Javascript
正则表达式,替换所有HTML标签的简单实例
2016/11/28 Javascript
JavaScript日期对象(Date)基本用法示例
2017/01/18 Javascript
详解nodejs中exports和module.exports的区别
2017/02/17 NodeJs
微信小程序 功能函数小结(手机号验证*、密码验证*、获取验证码*)
2017/12/08 Javascript
详解React项目的服务端渲染改造(koa2+webpack3.11)
2018/03/19 Javascript
vue 引用自定义ttf、otf、在线字体的方法
2019/05/09 Javascript
JS+DIV实现拖动效果
2020/02/11 Javascript
python利用OpenCV2实现人脸检测
2020/04/16 Python
python用插值法绘制平滑曲线
2021/02/19 Python
python圣诞树编写实例详解
2020/02/13 Python
python实现excel公式格式化的示例代码
2020/12/23 Python
JACK & JONES荷兰官网:男士服装和鞋子
2021/03/07 全球购物
小学教育毕业生自荐信
2013/11/18 职场文书
最新创业融资计划书
2014/01/19 职场文书
五好党支部事迹材料
2014/02/06 职场文书
汽车维修工岗位职责
2014/02/12 职场文书
纠风工作实施方案
2014/03/15 职场文书
中职三好学生事迹材料
2014/08/24 职场文书
党的群众路线教育实践活动对照检查材料(四风)
2014/09/27 职场文书
个人自我剖析材料
2014/09/30 职场文书
《实心球》教学反思
2016/02/23 职场文书
div与span之间的区别与使用介绍
2021/12/06 HTML / CSS
处理canvas绘制图片模糊问题
2022/05/11 Javascript