浅析python的Lambda表达式

yipeiwu_com7年前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]

相关文章

python 禁止函数修改列表的实现方法

有时候,需要禁止函数修改列表。例如要对裂变进行修改操作,也要保留原来的未打印的设计列表,以供备案。为解决这个问题,可向函数传递列表的副本而不是原件;这样函数所做的任何修改都只影响副本,而...

python join方法使用详解

join方法 join这个方法,将可迭代的数据类型,转为字符串或者bytes,没错可以转为bytes类型。注意这个可迭代的数据中的元素必须是相同类型的。 jion里的参数可迭代对象就行...

使用Pandas的Series方法绘制图像教程

使用Pandas的Series方法绘制图像教程

通常绘制二维曲线的时候可以使用matplotlib,不过如果电脑上安装了pandas的话可以直接使用Series的绘图方法进行图像的绘制。 pandas绘制图像其实也是给予matplot...

基于python判断目录或者文件代码实例

这篇文章主要介绍了基于python判断目录或者文件代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1. 判断目录是否存在 'i...

利用Python画ROC曲线和AUC值计算

利用Python画ROC曲线和AUC值计算

前言 ROC(Receiver Operating Characteristic)曲线和AUC常被用来评价一个二值分类器(binary classifier)的优劣。这篇文章将先简单的介...