Python——第四章:匿名函数(lambda 函数)

匿名函数也被称为 lambda 函数

lambda 函数是一种小型、一次性的、可以在一行内定义的匿名函数。它通常用于一些简单的操作,例如传递给高阶函数(接受函数作为参数的函数)或在一行内定义短小的功能。

特点:

  1. 匿名性: lambda 函数是匿名的,它没有固定的函数名。

  2. 简洁性: lambda 函数通常用于简短的操作,可以在一行内定义。

  3. 限制: lambda 函数只能包含一个表达式,而且该表达式的结果即为 lambda 函数的返回值。

表达式

语法:
    变量 = lambda 参数,参数2,参数3....: 返回值(表达式)

标准函数的写法:

def func(a, b):
    return a + b

ret = func(13, 12)
print(ret)

匿名函数的写法:

fn = lambda a, b: a + b
ret = fn(12, 13)
print(ret)

应用场景:

  • 高阶函数参数: lambda 函数通常作为高阶函数(例如 map(), filter(), sorted())的参数。
    numbers = [1, 2, 3, 4, 5]
    squared_numbers = map(lambda x: x**2, numbers)
    print(list(squared_numbers))  # 输出 [1, 4, 9, 16, 25]
    
  • 简短功能: 当只需要一个简单的功能时,可以使用 lambda 函数。
    # 使用 lambda 函数过滤偶数
    even_numbers = filter(lambda x: x % 2 == 0, numbers)
    print(list(even_numbers))  # 输出 [2, 4]

虽然 lambda 函数在某些场景下非常方便,但在更复杂的情况下,通常会使用常规的函数定义以提高可读性。

posted @ 2023-11-30 11:17  Magiclala  阅读(89)  评论(0)    收藏  举报