欢迎访问宙启技术站
智能推送

Python 中的高阶函数: map 和 lambda 用法

发布时间:2023-05-26 09:07:26

在 Python 中高阶函数是相当常见的一种特性,其中,map 函数和 lambda 函数则是高阶函数中的两个重要部分。下面将详细介绍这两个函数的用法。

1. map 函数

map 函数可将一个函数应用于一个迭代器的每个元素,返回所有结果组成的迭代器。它的语法如下:

map(function, iterable, ...)

其中,function 是应用于 iterable 中每个元素的函数;iterable 是一个或多个序列,如 list、tuple 或字符串等。

例如,以下代码会将列表 numbers 中的每个元素乘 2,并返回一个由结果组成的新列表:

numbers = [1, 2, 3, 4, 5]
res = map(lambda x: x * 2, numbers)
print(list(res))

输出:[2, 4, 6, 8, 10]

2. lambda 函数

lambda 函数是一种匿名函数,也称为函数表达式或者 lambda 表达式。它可以接收任意多个参数(包括可变参数),并返回单个表达式的值。 lambda 函数通常使用在需要一次性定义一些简单、局部的函数时。

lambda 函数的基本语法如下:

lambda arguments: expression

其中,arguments 是可选的参数,expression 是单个表达式,用于计算和返回结果。

例如,以下代码定义了一个简单的 lambda 函数:

square = lambda x: x ** 2
print(square(5))

输出:25

3. 小结

map 函数和 lambda 函数都是 Python 中非常有用的高阶函数。使用 map 函数可以对序列中的每个元素应用一个函数,而使用 lambda 函数可以简洁地定义一些局部函数。两者结合使用可以快速地进行一些简单、高效的操作。