Pythonlambda函数:学习lambda函数的语法和使用方法
lambda函数是Python编程语言中一种匿名函数,也称为lambda表达式或lambda语句。它是一种小巧但十分实用的函数定义方式,特别适用于临时需要定义简单函数的情况。本文将介绍lambda函数的语法和使用方法。
1. lambda函数语法
lambda函数的语法格式为:
lambda 参数列表: 表达式
其中,参数列表是指函数的参数,可以是多个,用逗号分隔;表达式是函数体,可以是任意简单的Python表达式。
例如,下面是一个简单的lambda函数,接受两个参数x和y,返回他们的和:
f = lambda x, y: x + y
2. lambda函数的使用方法
lambda函数主要用于临时需要定义简单函数的情况,例如排序、筛选等。下面分别以排序和筛选为例,介绍lambda函数的使用方法。
2.1 排序
Python内置的排序函数sorted()可以接受一个可迭代对象,并返回一个新的排好序的列表。sorted()函数还可以接受一个关键字参数key,用于指定排序的键。
在排序中,lambda函数主要用于指定排序的键。例如,我们有以下一个列表:
lst = [(1, 'a'), (3, 'b'), (2, 'c'), (4, 'd')]
我们可以按照元组的 个元素进行排序,即:
sorted_lst = sorted(lst, key=lambda x: x[0])
这里的lambda函数接受一个元组x,返回x的 个元素x[0]。sorted()函数根据这个元素进行排序,得到的结果为:
[(1, 'a'), (2, 'c'), (3, 'b'), (4, 'd')]
2.2 筛选
Python内置的高阶函数filter()可以接受一个可迭代对象和一个函数,返回一个新的筛选后的列表。
在筛选中,lambda函数主要用于定义筛选函数。例如,我们有以下一个列表:
lst = [1, 2, 3, 4, 5, 6, 7, 8, 9]
我们可以筛选出其中的偶数,即:
filtered_lst = list(filter(lambda x: x % 2 == 0, lst))
这里的lambda函数接受一个数字x,返回x%2==0的布尔值,filter()函数根据这个布尔值进行筛选,得到的结果为:
[2, 4, 6, 8]
3. 总结
lambda函数是Python语言中的一种匿名函数,主要用于临时需要定义简单函数的情况。lambda函数的语法格式为lambda 参数列表:表达式。lambda函数的使用方法主要分为排序和筛选两种情况,分别用于指定排序的键和定义筛选函数。
