当前位置: 首页 > 图灵资讯 > 行业资讯> Python之lambda表达式

Python之lambda表达式

发布时间:2025-10-16 21:14:53

lambda表达式格式和应用场景

1、lambda函数与list的结合

list=lambda:xforxinrange(10)
print(list[0])
>>>9
list=lambdax:xforxinrange(10)
print(list[0])
>>>0

2、map,filter,reduce函数

例子:

a=[('a',1),('b',2),('c',3),('d',4)]
a_1=list(map(lambdax:x[0],a))

例如,map函数的第一个参数是lambda表达式,输入对象并返回对象的第一个元素。第二个是需要工作的对象。这里有一个列表。在python3中,map返回map对象。我们需要手动将其转换为list[a’,’b’,’c’,’d’]

例子:

a=[1,2,3,4]
b=[2,3,4,5]
a_1=list(map(lambdax,y:x+y,a,b))

上面的例子是为了说明lambda可以有多个表达参数。返回结果为[3、5、7、9]

相关推荐:Python视频教程

例子:

a=[1,2,3,4,6,7]
a_1=filter(lambdax:x<4,a)

例如,定义lambda表达式,筛选a列表中小于4的元素,结果为[1、2、3]。filter函数直接返回列表,无需转换。第三个是初始值。如果我们没有给出初始值,那么开始操作的两个元素是序列的前两个元素。否则,我们将使用我们给出的初始值和序列的第一个元素,然后结果将与第三个元素一起操作,以此类推。最后一个例子是28

例子:

fromfunctoolsimportreduce#需要导入此模块的python3
a=[1,2,3,4,6,7]
a_1=reduce(lambdax,y:x+y,a)

reduce中使用的lambda表达式需要两个参数,reduce函数共三个参数。

第一个是lambda表达式,第二个是累积序列,第三个是初始值,我们没有给初始值,所以开始操作的两个元素是前两个序列。否则,我们将使用我们给出的初始值和序列的第一个元素,然后结果将与第三个元素一起操作,以此类推。最后一个例子是28。

3、字典多条件排序

例子:

dict={'a':1,'b':2,'c':3,'d':4,'e':3,'f':1,'g':7}
sorted_dict_asc=sorted(dict.items(),key=lambdaitem:item[0])
sorted_dict_dsc=sorted(dict.items(),key=lambdaitem:item[0],reverse=True)

输出(第一升序,第二降序):

[('a',1),('b',2),('c',3),('d',4),('e',3),('f',1),('g',7)]
[('g',7),('f',1),('e',3),('d',4),('c',3),('b',2),('a',1)]]

相关文章

python如何通过日志分析加入黑名单

python如何通过日志分析加入黑名单

2025-10-17
python抽象基类之_subclasshook_方法

python抽象基类之_subclasshook_方法

2025-10-17
Python3 面向对象

Python3 面向对象

2025-10-17
Python中可迭代对象、迭代器详解

Python中可迭代对象、迭代器详解

2025-10-17
Python3 XML解析

Python3 XML解析

2025-10-17
Python之类方法、__new__方法和__init__方法介绍

Python之类方法、__new__方法和__init__方法介绍

2025-10-17