首页 > 编程语言 >python中lambda函数如何理解

python中lambda函数如何理解

时间:2023-11-28 13:12:00浏览次数:32  
标签:函数 name python age sex female data lambda

一:问题

python中lambda函数如何理解?

 

二:回答

如下所示:

def add(a,b):  
    return a+b

data = lambda a,b:a+b  

if __name__ == "__main__":
	print(add(3,4))
	print(data(3,4))

>>> 运行结果如下:
>>> 7
>>> 7

这里lambda函数,可以这样理解:
lambda 替代了上面的def add,并去掉了return,也就是lambda 后面直接跟上了传参的参数,冒号后面跟着的是函数要实现的操作,操作完成会直接返回结果

 

三:拓展

按照上面的思路:对data数据进行过滤性别为女性,按照年龄从大到小排序

data = [{"name":"bob","sex":"male","age":20},{"name":"linda","sex":"female","age":35},  
        {"name":"soniar","sex":"female","age":28},{"name":"jane","sex":"female","age":40}]  
  
filter_data = list(filter(lambda item: item["sex"]=="female",data))  
filter_data.sort(key=lambda item:item["age"],reverse=True)  
print(filter_data)

>>> 程序运行结果如下:
>>> [{'name': 'jane', 'sex': 'female', 'age': 40}, {'name': 'linda', 'sex': 'female', 'age': 35}, {'name': 'soniar', 'sex': 'female', 'age': 28}]

上面lambda item: item["sex"] == "female",即遍历data列表中每一项,当符号性别为女性这个条件时则返回,得到filter_data的数据为除去了性别为男性的列表数据
然后用sort对filter_data数据进行排序,key=lambda item:item["age"],代表以age的值为排序对象进行排序,最终filter_data即为筛选了性别为女性,且按年龄降序排序的结果。

 

标签:函数,name,python,age,sex,female,data,lambda
From: https://www.cnblogs.com/miaomiaokaixin/p/17861707.html

相关文章

  • python中调用函数,只写一个函数名是什么意思?
    一:问题python中调用函数,只写一个函数名是什么意思? 二:回答只写函数名,则调用的是函数的地址写函数名并传参,则调用的是函数返回值举例说明:1test_data=[{"name":"李白","order":1},{"name":"杜甫","order":4},2{"name":"高力士",......
  • 带有最小间隔时间的队列读取实现 —— 最小等待时间的队列 —— Python编程
     (注:照片源自免费网站,地址:https://www.freepik.com/photos/angry-panda/13)  ==================================================  事情起源是最近在看一个TensorFlow的代码,是TensorFlow实现了一个最小等待时间的队列,解释一下就是一个进程阻塞在一个队列上等待数据的读取,但是......
  • python通过requirements.txt文件管理工程包
    一:问题你创建了一个python工程,里面有很多包,怎么让别人拿到这个工程时,知道要安装哪些包,并一键自动全部安装呢? 二:解决方案你可以在你的工程中,执行下面的命令,它可以自动生成你的工程的依赖包清单:pipfreeze>requirements.txt别人拿到你的工程后,可以执行下面的命令,实现一键......
  • 无涯教程-MySQL Numeric Functions函数
    MySQL数值函数主要用于数值运算和/或数学计算。下表详细介绍了MySQL实现中可用的数值函数。Sr.No.Name&Description1ABS()返回数值表达式的绝对值。2ACOS()返回数值表达式的反余弦值。如果该值不在-1到1之间,则返回NULL。3ASIN()返回数字表达式的反正弦值。如......
  • simulink回调函数在embedded code/autosar的应用
    simulink开发嵌入式方向,在生成的代码中会以注释的形式记录代码生成的时间于模型版本。但编译完成后的可执行文件中并不会存储这些信息,在某些情况下定位问题与确认模型的版本就不容易实现。因此在模型中创建一个全局变量用来存储版本信息,使用回调函数自动填写相关信息。如下图使......
  • 【Lidar】基于Python的点云数据下采样+体素显示
    ​1Open3D库介绍        Open3D是一个开源的3D数据处理库,发布于2015年,目前已经更新到0.17.0版本。它基于MIT协议开源许可,使用C++11实现,并经过高度优化,还通过PythonPybinding提供了前端PythonAPI。Open3D为开发者提供了一组精心选择的数据结构和算法,内部实现高度优化......
  • 【Lidar】基于Python的Open3D库可视化点云数据
    ​1Open3D库介绍1.1介绍        Open3D是一个开源的3D数据处理库,发布于2015年,目前已经更新到0.17.0版本。它基于MIT协议开源许可,使用C++11实现,并经过高度优化,还通过PythonPybinding提供了前端PythonAPI。 Open3D为开发者提供了一组精心选择的数据结构和算法,内部实......
  • python函数传参时加2个星号**作用
    一:问题下面的代码1deftest_func(*args,**kwargs):2print(f"argsType={type(args)},args={args}")3print(f"kwargsType={type(kwargs)},kwargs={kwargs}")45content1=116content2=227info={"name":&......
  • Python爬虫爬取wallhaven.cc图片
    话不多说,直接上代码!1importtime2importrandom3importuuid45fromlxmlimportetree6importos7importrequests8importthreading9fromqueueimportQueue10fromtqdmimporttqdm11fromconcurrent.futuresimportThreadPoolExecutor121......
  • python--变量和简单数据类型
    Python--变量和简单数据类型目录Python--变量和简单数据类型一、Python脚本运行过程二、变量1、变量的命名和使用2、python关键字和内置函数2.1、python关键字2.2、python内置函数3、使用变量时避免命名错误4、变量是标签三、字符串1、使用方法修改字符串的大小写2、在字符串中使......