国际访客建议访问 Primers 编程伙伴 国际版站点 > Python 教程 > map 以获得更好的体验。

# Python 的内置函数 map

请查看 Python 内建函数列表 了解更多相关 API。

说明:将可迭代对象进行映射。

# 函数说明

def map(fn, iterable, *iterables):
    '''
    将可迭代对象进行映射

    :param fn: 回调函数,返回元素映射后的值
    :param iterable: 要映射的可迭代对象
    :param iterables: 可变长度的可迭代对象
    :return: 映射后的可迭代对象
    '''

!subtitle:说明

将可迭代对象进行映射。

回调函数的参数与 map 的可迭代对象参数数量及顺序保持一致。如果多个可迭代对象参数的长度不同,按最短的长度进行映射。

采用惰性计算(Lazy Evaluation)的策略,也就是不会立即执行计算,而是在使用结果时才会计算相应的元素。

!subtitle:参数

  • fn - 映射的回调函数,可迭代对象的元素会作为参数传给此函数,此函数的返回值作为映射后的值

  • iterable - 要映射的可迭代对象

  • iterables - 任意数量的可迭代对象

!subtitle:返回值

映射后的 map 对象。

# 示例

运行示例

# 单个可迭代对象
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
print(map(lambda x : x**2, numbers))
print(list(map(lambda x : x**2, numbers)))

# 多可迭代对象
numbers1 = [1, 2, 3, 4, 5]
numbers2 = [2, 4, 6, 8]         # 长度不同,按最短的处理
print(list(map(lambda x,y : x*y, numbers1, numbers2)))

# 推荐阅读

本文 更新于: 2025-11-27 09:37:59 创建于: 2025-11-27 09:37:59