python基础教程之匿名函数lambda

yipeiwu_com6年前Python基础

 python lambda

当我们在使用函数时,有时候,并不需要显示的定义一个函数,我们可以使用匿名函数更加方便,在Python中对匿名函数也提供了支持。

比如当我们想计算两个数a,b之和时,即f(a,b) = a + b。我们可以有两种方法完成,第一种就是显示的定义一个函数f(x,y),然后将参数传进去得到结果。第二种方式就是使用匿名函数了。

f = lambda x,y:x+y 
>>>f(1,2) 
3 

匿名函数lambda x,y:x+y实际上就是:

def f(x, y): 
  return x + y 

在python中关键字lambda表示匿名函数,冒号前面的x,y表示的时函数的参数,匿名函数的语法就是:

lambda [arg1[,arg2,arg3....argN]]:expression

lambda语句中,冒号前是参数,可以有多个,用逗号隔开,冒号右边的表达式的结果作为匿名函数的返回值。

匿名函数有一个限制就是只能有一个表达式,不用写return,匿名函数的返回值就是该表达式的结果。用匿名函数有个好处,因为函数没有名字,不必担心函数名冲突。此外,匿名函数也是一个函数对象,也可以把匿名函数赋值给一个变量,再利用变量来调用该函数:

>>> f = lambda x: x * x 
>>> f 
<function <lambda> at 0x101c6ef28> 
>>> f(5) 
25 

同时,也可以把匿名函数作为函数的返回值返回,比如:

def build(x, y): 
  return lambda: x + y  

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

Python selenium 三种等待方式解读

发现太多人不会用等待了,博主今天实在是忍不住要给大家讲讲等待的必要性。 很多人在群里问,这个下拉框定位不到、那个弹出框定位不到…各种定位不到,其实大多数情况下就是两种问题:1 有fram...

对pandas写入读取h5文件的方法详解

1、引言 通过参考相关博客对hdf5格式简要介绍。 hdf5在存储的是支持压缩,使用的方式是blosc,这个是速度最快的也是pandas默认支持的。 使用压缩可以提磁盘利用率,节省空间。...

python合并已经存在的sheet数据到新sheet的方法

简单的合并,本例是横向合并,纵向合并可以自行调整。 import xlrd import xlwt import shutil from xlutils.copy import...

python通过paramiko复制远程文件及文件目录到本地

最近写运维自动化平台,需要用python写很多的小功能模块。 这里就分享一个用Python的paramiko来实现功能的一段代码: 复制远程服务器上的文件及文件夹到本地目录。 解释一下什...

python sort、sorted高级排序技巧

Python list内置sort()方法用来排序,也可以用python内置的全局sorted()方法来对可迭代的序列排序生成新的序列。 1)排序基础 简单的升序排序是非常容易的。只需要...