lambda表达式(匿名函数)

文章详细介绍了Python中的lambda表达式,包括它的使用方式,如作为表达式、函数嵌套部分、不带参数的使用,以及在选择函数和配合max函数操作字典和列表中的应用。lambda表达式主要用于创建简洁的单行函数,尤其在需要临时函数且不重复利用时。
摘要由CSDN通过智能技术生成
  • lambda后面跟一个或多个参数,紧跟一个冒号,以后是一个表达式。冒号前是参数,冒号后是返回值
  • lambda表达式可以出现在Python语法不允许def出现的地方
  • lambda表达式返回一个值
  • lambda用来编写简单的函数,不会再重复利用的函数

1、作为表达式

add_func = lambda x,y : x+y # x,y相当于传参,x+y是函数体,返回值就是x+y的结果
# 变量接收lambda返回值
sum1 = add_func(2,3)
print(sum1)
sum2 = add_func("hello","python")
print(sum2)

2、作为函数的嵌套部分

def get_line(a,b):
	return lambda x:a*x+b 
y = get_line(2,3)
# 执行lambda表达式
print(y(4))

3、不带参数的lambda

bb = lambda:"who are you"
print(bb()) # 调用不用传入参数

4、用于选择函数

list_func = [lambda x:x+10, lambda y:y+100, lambda z:z+1000] #其中的每个元素都是一个小函数,可以随时调用
# 定义空列表
result = []
# 循环将list_func中的元素计算后加入空列表
for r in list_func:
	result.append(r(40)) # 加40
print(result) # [50, 140, 1040]

5、lambda表达式作为参数:max函数与lambda表达式操作字典

sorce = {"语文":78,"数学":101,"英语":99}
mark_func = lambda x:sorce[x] # lambda传入参数x,返回字典的value
max_mark = max(sorce,key=mark_func)
print(mark) # 数学

可以用这个函数,加上max来实现求取经过函数后的最大值所对应的自变量x

6、lambda表达式:max函数与lambda表达式操作列表

list1 =[22,43,67,54,88]
func = lambda x:list1[x]
max_item = max(range(len(list1)),key=func)
print(max_item)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值