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模仿POST提交HTTP数据及使用Cookie值的方法
Nov 10 Python
简单介绍Python中的JSON使用
Apr 28 Python
使用PyV8在Python爬虫中执行js代码
Feb 16 Python
浅谈python for循环的巧妙运用(迭代、列表生成式)
Sep 26 Python
深入理解Python中range和xrange的区别
Nov 26 Python
解析Python中的eval()、exec()及其相关函数
Dec 20 Python
python实现按长宽比缩放图片
Jun 07 Python
解决Python selenium get页面很慢时的问题
Jan 30 Python
python pandas cumsum求累计次数的用法
Jul 29 Python
python join方法使用详解
Jul 30 Python
python如何求数组连续最大和的示例代码
Feb 04 Python
Python3+Appium安装及Appium模拟微信登录方法详解
Feb 16 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安全配置方法
2007/06/16 PHP
支持数组的ADDSLASHES的php函数
2010/02/16 PHP
并发下常见的加锁及锁的PHP具体实现代码
2010/10/12 PHP
php urlencode()与urldecode()函数字符编码原理详解
2011/12/06 PHP
php增删改查示例自己写的demo
2013/09/04 PHP
thinkphp获取栏目和文章当前位置的方法
2014/10/29 PHP
php获得文件夹下所有文件的递归算法的简单实例
2016/11/01 PHP
cakephp2.X多表联合查询join及使用分页查询的方法
2017/02/23 PHP
js自定义事件代码说明
2011/01/31 Javascript
jquery加载页面的方法(页面加载完成就执行)
2011/06/21 Javascript
xml转json的js代码
2012/08/28 Javascript
js日期、星座的级联显示代码
2014/01/23 Javascript
如何编写高质量JS代码
2014/12/28 Javascript
jQuery功能函数详解
2015/02/01 Javascript
confirm确认对话框的实现方法总结
2016/06/17 Javascript
Angular2 (RC5) 路由与导航详解
2016/09/21 Javascript
对于input 框限定输入值为浮点型的js代码
2017/09/25 Javascript
基于jQuery.i18n实现web前端的国际化
2018/05/04 jQuery
vue element table 表格请求后台排序的方法
2018/09/28 Javascript
vue-cli3+typescript初体验小结
2019/02/28 Javascript
Vue移动端右滑屏幕返回上一页附源码下载
2019/06/26 Javascript
快速对接payjq的个人微信支付接口过程解析
2019/08/15 Javascript
[06:01]刀塔次级联赛top10第一期
2014/11/07 DOTA
python select.select模块通信全过程解析
2017/09/20 Python
python+pandas生成指定日期和重采样的方法
2018/04/11 Python
python实现内存监控系统
2021/03/07 Python
Python基于pandas实现json格式转换成dataframe的方法
2018/06/22 Python
Flask之请求钩子的实现
2018/12/23 Python
Python实现12306火车票抢票系统
2019/07/04 Python
介绍一下Linux中的链接
2016/06/05 面试题
大学生的四年学习自我评价
2013/12/13 职场文书
旅游管理专业个人求职信范文
2013/12/24 职场文书
高三上学期学习自我评价
2014/04/23 职场文书
项目建议书范文
2014/05/12 职场文书
2014副镇长民主生活会个人对照检查材料思想汇报
2014/09/30 职场文书
中秋节祝酒词
2015/08/12 职场文书