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抓取网页图片并放到指定文件夹
Apr 24 Python
从零学python系列之从文件读取和保存数据
May 23 Python
python利用datetime模块计算时间差
Aug 04 Python
如何使用python爬取csdn博客访问量
Feb 14 Python
Python 基于Twisted框架的文件夹网络传输源码
Aug 28 Python
python 读写txt文件 json文件的实现方法
Oct 22 Python
python机器学习理论与实战(四)逻辑回归
Jan 19 Python
python识别验证码图片实例详解
Feb 17 Python
python使用openpyxl操作excel的方法步骤
May 28 Python
python接口自动化框架实战
Dec 23 Python
matplotlib常见函数之plt.rcParams、matshow的使用(坐标轴设置)
Jan 05 Python
Python实现学生管理系统(面向对象版)
Jun 24 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
第十节--抽象方法和抽象类
2006/11/16 PHP
php后台程序与Javascript的两种交互方式
2009/10/25 PHP
php将日期格式转换成xx天前的格式
2015/04/16 PHP
jquery 多级下拉菜单核心代码
2010/05/21 Javascript
jquery png 透明解决方案(推荐)
2010/08/21 Javascript
javascript scrollTop正解使用方法
2013/11/14 Javascript
分享JavaScript获取网页关闭与取消关闭的事件
2013/12/13 Javascript
javascript与有限状态机详解
2014/05/08 Javascript
JavaScript中的变量作用域介绍
2014/12/31 Javascript
jQuery实现点击水纹波动动画
2016/04/10 Javascript
jquery插件uploadify多图上传功能实现代码
2016/08/12 Javascript
详解Javascript函数声明与递归调用
2016/10/22 Javascript
微信小程序开发之圆形菜单 仿建行圆形菜单实例
2016/12/12 Javascript
Vue 进入/离开动画效果
2017/12/26 Javascript
JavaScript调用模式与this关键字绑定的关系
2018/04/21 Javascript
详解基于Koa2开发微信二维码扫码支付相关流程
2018/05/16 Javascript
vue2.0 实现导航守卫(路由守卫)
2018/05/21 Javascript
如何使用vuex实现兄弟组件通信
2018/11/02 Javascript
js实现多张图片每隔一秒切换一张图片
2019/07/29 Javascript
node使用mysql获取数据库数据中文乱码问题的解决
2019/12/02 Javascript
JavaScript中break、continue和return的用法区别实例分析
2020/03/02 Javascript
nodejs使用Sequelize框架操作数据库的实现
2020/10/21 NodeJs
jQuery实现查看图片功能
2020/12/01 jQuery
[48:02]Ti4循环赛第三日 VG vs Liquid和NEWBEE vs DK
2014/07/12 DOTA
[04:52]第二届DOTA2亚洲邀请赛主赛事第一天比赛集锦:OG娜迦海妖放大配合谜团大中3人
2017/04/02 DOTA
python斐波那契数列的计算方法
2018/09/27 Python
django的ORM模型的实现原理
2019/03/04 Python
Python爬虫 urllib2的使用方法详解
2019/09/23 Python
pycharm如何实现跨目录调用文件
2020/02/28 Python
YOINS官网:时尚女装网上购物
2017/03/17 全球购物
毕业求职自荐信格式是什么
2013/11/19 职场文书
人力资源经理的岗位职责
2014/03/02 职场文书
党员干部承诺书
2014/03/25 职场文书
活动总结格式范文
2014/04/26 职场文书
大型会议策划方案
2014/05/17 职场文书
父亲节活动策划方案
2014/08/24 职场文书