Python匿名函数lambda(R与Python第五篇)

目录

一、为什么要引入"lambda函数"?

二、匿名函数的两种用法

参考:


本文来源:《Python全案例学习与实践》(2019年9月出版,电子工业出版社)

Python允许使用一种无名的函数,称其为匿名函数。

Python通过关键字lambda来创建匿名函数。由于匿名函数使用关键字lambda,因此又被称为lambda函数。从本质上说,匿名函数只是一个表达式,虽然它也有所谓的"函数体",但其函数体比普通函数的函数体要简单得多。

一、为什么要引入"lambda函数"?

主要是为了减少栈内存占用,从而提高程序得运行效率。因为在函数中定义得变量和对象均占用函数得栈内存。换句话说,引入匿名函数是为了提高程序的运行效率,减少资源占用。

lambda函数的一般形式:

lambda [arg1<, arg2, ..., argn>]: expression

其中

  • lambda为关键词;
  • \]为函数形式参数列表,可为一个或多个;

  • expression表达式,相当于普通函数的"函数体";
  • 该表达式的值就是匿名函数的函数体

二、匿名函数的两种用法

  • 使用方法一:先定义后调用
    • 先定义匿名函数,然后将函数值赋给某个变量(如下面代码示例中的r),然后通过实际参数的形式调用lambda函数将实际参数传入(如r(a, b));
  • 使用方法二:在定义的同时调用
    • 它的一般形式是
    • (lambda函数) (实际参数)
    • 注意:以这种方式定义的匿名函数只能被调用一次。
python 复制代码
>>>a, b =3, 5
>>>r = lambda x, y:x*3+y-1  #定义匿名函数
>>>print(r(a,b))            #输出匿名函数的值
13
>>>print((lambda x, y:x*3+y-1)(3,5))
13

如果用普通函数实现上述匿名函数的功能,则对应的函数应被定义为:

def func(x, y):

return x*3+y-1

  • 该函数的调用形式为:func(a,b)

参考:

《Python全案例学习与实践》(2019年9月出版,电子工业出版社)

相关推荐
与虾牵手14 分钟前
大模型流式输出 Streaming API 完整教程:从原理到踩坑,一篇搞定
python·aigc·ai编程
程序员JerrySUN16 分钟前
别再把 HTTPS 和 OTA 看成两回事:一篇讲透 HTTPS 协议、安全通信机制与 Mender 升级加密链路的完整文章
android·java·开发语言·深度学习·流程图
j_xxx404_17 分钟前
C++算法:一维/二维前缀和算法模板题
开发语言·数据结构·c++·算法
高洁0124 分钟前
学习基于数字孪生的质量预测与控制
人工智能·python·深度学习·数据挖掘·transformer
OopspoO25 分钟前
我的博客同步
笔记
蓝天智能29 分钟前
QT实战:Qt6 字符编码避坑指南
开发语言·qt
xier_ran30 分钟前
【第一周】关键词解释:倒数排名融合(Reciprocal Rank Fusion, RRF)算法
开发语言·python·算法
HelloWorld__来都来了30 分钟前
如何用python爬取上市公司信息
开发语言·python
myloveasuka33 分钟前
[Java]子类到底能继承父类中的哪些东西?继承中成员变量/方法访问特点---就近原则
java·开发语言
开朗觉觉34 分钟前
将json字符串转换为json对象
linux·服务器·python