Python中,lambda表达式是干啥用的?

在 Python 中,lambda 函数是一种匿名函数,通常用于简单的操作或者作为其他函数的参数

为什么叫 lambda ?

lambda 表达式的名称来源于数学和计算机科学中的概念,即λ演算(lambda calculus)。
λ演算是一种用来研究函数定义、函数应用和递归的形式系统,它是由数学家 Alonzo Church 在 1930 年代提出的一种理论框架,被认为是函数式编程的基础之一。

在λ演算中,λ符号表示抽象函数的引入,类似于在编程语言中定义匿名函数的概念。
因此,当计算机科学领域开始引入类似的匿名函数概念时,为了向λ演算致敬,选择了“lambda”作为匿名函数的关键字。

在 Python 中,lambda 表达式就是对λ演算中抽象函数的一种实现,它提供了一种简洁的方式来创建匿名函数,用于在需要函数对象的任何地方使用。
因此,lambda 表达式的名称来源于λ演算,是对函数式编程理论的一种实践和应用。在 Python 中也可以用于创建简单的函数对象。因为它是匿名的,所以不需要为函数指定名称,这使得它在某些场景下非常方便。

举个典型的例子

在排序或筛选操作中传递简单的函数逻辑时,lambda 表达式非常有用。比如,分别使用lambda、不使用lambda ,按元组中的第二个元素进行排序

用 lambda

data = [('John', 28), ('Alice', 23), ('Bob', 35), ('Diana', 20)] 

sorted_data = sorted(data, key=lambda x: x[1]) 

print(sorted_data) 

不用 lambda

def sort_by_second_element(x): 
	return x[1] 
	
data = [('John', 28), ('Alice', 23), ('Bob', 35), ('Diana', 20)] 
sorted_data = sorted(data, key=sort_by_second_element)

print(sorted_data)

请添加图片描述

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值