浅析python的Lambda表达式

yipeiwu_com6年前Python基础

在python项目中,我们经常会用到lambda,那么lambda是什么呢,有什么作用,下面我们开始介绍

1、可以使用lambda关键字创建匿名函数。Lambda函数可以在需要函数对象的任何地方使用。它们在语法上限于单个表达式。所谓匿名就是无名。

例如定义两个书加法:

myplus=lambda a,b:a+bprint myplus(4,2)

输出:

6

2、再比如我们求两个数的乘积

mysubs=lambda a,b:a*bprint(mysubs(9,9))

输入两个数,输出第一个数

mychooses=lambda a,b:aprint(mychooses(1,2))

3、输出不定个数的参数

例如输入参数求和

myargadd=lambda *args: sum(args)print(myargadd(9))print(myargadd(9,10,11))

输出

9

30

4、那么如果是传入键值,也就是字典类型呢,当然也是可以的

myargdic=lambda **kwargs: kwargsfor key ,v in myargdic(tr=3,pp=9,py='python'):    print(key , v)

输出:

('p', 'p')

('p', 'y')

('t', 'r')

5、lamdba除了可以作为方法使用,还可以作为一个方法的参数使用:

例如map函数将list元素都乘以2

x=[1,2,3,4,5]print map(lambda y:y*2,x)

输出:[2, 4, 6, 8, 10]

相关文章

python3.6下Numpy库下载与安装图文教程

python3.6下Numpy库下载与安装图文教程

今天在做Plotly的散点图时,需要Numpy 这个库的使用。 没有安装Numpy这个库的时候,报错一般是下图这样:ModuleNotFoundError: No module name...

python用for循环求和的方法总结

Python中可以使用for循环实现累加求和 for循环语法: for 变量 in range(x): 循环需要执行的代码 如下实现1到n求和: def main():...

修改Python的pyxmpp2中的主循环使其提高性能

引子 之前clubot使用的pyxmpp2的默认mainloop也就是一个poll的主循环,但是clubot上线后资源占用非常厉害,使用strace跟踪发现clubot在不停的poll,...

新年快乐! python实现绚烂的烟花绽放效果

新年快乐! python实现绚烂的烟花绽放效果

做了一个Python的小项目。利用了一点python的可视化技巧,做出烟花绽放的效果,文章的灵感来自网络上一位大神。 一.编译环境 Pycharm 二.模块 1.tkinter:这个...

浅谈Python实现贪心算法与活动安排问题

浅谈Python实现贪心算法与活动安排问题

贪心算法 原理:在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最优解。贪心算法不是对所有问题都能得到整体最优解,但对...