x=1f=lambda x: x + 1print(f(1)) 这个简单的 lambda 函数接受一个参数 x,并返回 x+1 的结果。
这个 lambda 函数接受两个参数 x 和 y,并返回它们的和。
map 函数可以将一个函数应用于一个迭代器中的每个元素,并返回一个新的迭代器。lambda 函数常常用于 map 函数中。 lst = [1, 2, 3, 4, 5]new_lst = list(map(lambda x: x * 2, lst))print(new_lst) 这个 lambda 函数接受一个参数 x,并返回 x*2 的结果。map 函数将 lambda 函数应用于列表 lst 中的每个元素,并将结果存储在一个新列表 new_lst 中。
filter 函数可以使用一个函数来过滤一个迭代器中的元素。lambda 函数常常用于 filter 函数中。
这个 lambda 函数接受一个参数 x,并返回 x 是否是偶数的布尔值。filter 函数将 lambda 函数应用于列表 lst 中的每个元素,并仅将返回 True 的元素存储在新列表 new_lst 中。
sorted 函数可以使用一个函数来排序一个列表。lambda 函数常常用于 sorted 函数中。 lst = [(2, 'b'), (1, 'a'), (3, 'c')] new_lst = sorted(lst, key=lambda x: x[0]) 这个 lambda 函数接受一个参数 x,并返回元组 x 中的第一个元素。sorted 函数将 lambda 函数应用于列表 lst 中的每个元素,并按照返回的结果对元素进行排序。 6.作为函数参数传递 在 Python 中,函数可以作为参数传递给其他函数。lambda 表达式可以用于这种情况,以便快速定义并传递一个匿名函数。例如,可以使用 lambda 表达式来排序列表:
在这个例子中,lambda 表达式 lambda x: len(x) 用于计算列表中每个元素的长度,并将其作为排序的关键字。 7.用于返回函数 在 Python 中,函数可以作为另一个函数的返回值。lambda 表达式可以用于快速定义并返回一个匿名函数。例如,可以定义一个函数,该函数返回一个 lambda 表达式,该 lambda 表达式返回传递的参数的平方值: def get_squared_function(): return lambda x: x**2f = get_squared_function()print(f(2)) # 4 在这个例子中,get_squared_function 函数返回一个 lambda 表达式 lambda x: x**2,该 lambda 表达式接受一个参数并返回其平方值。然后,返回的函数赋值给 f 变量,并在调用时用 f(2) 的方式使用。 8、用于条件表达式,与4一样 lambda 表达式还可以用于条件表达式中,以便根据条件返回一个值。例如,可以使用 lambda 表达式来检查列表中的每个元素是否为奇数:
在这个例子中,lambda 表达式 lambda x: x % 2 != 0 用于检查列表中的每个元素是否为奇数,并返回一个布尔值。然后,filter 函数用于筛选列表中符合条件的元素。 9、使用Lambda函数对列表进行归约,计算所有元素的和 from functools import reducelst = [1, 2, 3, 4, 5]total = reduce(lambda x, y: x + y, lst)print(total) # 15 |
|