目录
lambda函数,也称为匿名函数,是Python中一种简洁的定义函数的方式。lambda函数允许快速定义单行函数,这在进行函数式编程时非常有用。
一、 lambda函数的基本语法
lambda函数的语法非常简单,其结构如下:
lambda 参数: 表达式
这里:
- 参数:和普通函数一样,lambda可以接受任意数量的参数,包括可选参数、关键字参数等。
- 表达式:这是一个表达式而非代码块,lambda函数按照这个表达式计算结果,然后返回这个结果。
二、lambda函数的应用
1.lambda函数作为单独的函数
当lambda作为单独的函数使用时,它通常用于定义简单的、一次性的、匿名的函数。比如,你想定义一个简单的函数来计算两数之和,但又觉得这个函数太简单,不值得定义一个完整的函数,这时就可以用lambda。
例如,计算两数之和:
a = lambda x, y: x + y
print(a(10, 5)) # 输出:15
2. 作为参数传递给其他函数
lambda也常用于作为参数传递给需要小函数的其他函数,如map()
、filter()
和sorted()
等。这样可以在调用这些函数时直接定义函数行为,而无需预先定义标准函数。
(1)使用map()
来计算列表中每个元素的平方:
a= [1, 2, 3, 4]
b= list(map(lambda x: x ** 2, a))
print(b) # 输出:[1, 4, 9, 16]
(2)使用filter()
筛选出列表中的偶数:
a = [1, 2, 3, 4, 5, 6]
b = list(filter(lambda x: x % 2 == 0, a))
print(b) # 输出:[2, 4, 6]
(3)使用sorted()
根据元组的第二个元素排序:
a = [(1, '一'), (3, '三'), (2, '二'), (4, '四')]
b= sorted(a, key=lambda c: c[1])
print(b) # 输出:[(4, '四'), (1, '一'), (3, '三'), (2, '二')]
三、总结
lambda函数因其简洁性在Python编程中非常有用,既可以作为独立的小函数使用,也可以作为参数传递给其他期望函数参数的函数。这种灵活性让lambda函数成为处理集合数据、进行简单计算或逻辑判断时的理想选择。通过上面的示例,你应该能够理解lambda函数如何在这两种不同的情境中发挥作用。