lambda表达式

lambda是一个用于创建匿名函数的关键字。匿名函数是一种没有具体名称的小型函数,通常用于需要一个简单函数但不想正式定义一个完整函数的情况。

lambda表达式:

lambda arguments :expression

#lambda:关键字
#arguments:函数参数,可以有多个参数
#expression:函数返回值

示例用法:

#示例一
add = lambda x, y : x + y
print(add(3 , 5))

#示例二:用作高阶函数的参数
numbers = [1, 2, 3, 4]
squared = map(lambda x : x ** 2, numbers)
print(list(squared))     #[1, 4, 9, 16]

#示例三:用于条件表达式
is_even = lambda x : x % 2 == 0
print(is_even(4))   #True
print(is_even(7))   #False

注意:虽然lambda函数很方便,但对于一些复杂的逻辑,建议使用正式的def语句定义函数,以提高代码的可读性

补充:lambda表达式可以应用在常规函数不可能存在的地方

1.高阶函数的参数

#使用lambda函数作为sorted函数的key参数,按字符串长度排序
string = ['apple', 'banana', 'car']
sorted_string = sorted(string, key = lambda x: len(x))
print(sorted_string)   

2.事件处理

#处理按钮点击事件
button_click  = lambda:print("button clicked")
button_click()

3.回调函数

def process_data(data, callback):
    processed_data = data * 2
    callback(processed_data)
process_data(10, lambda x: print(f"processed data:{x}"))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值