Python 高阶函数 map() 简介和使用详解
什么是高阶函数?
高阶函数是指能接收函数作为参数和/或返回函数的函数。在 Python 中,函数本身也是一个对象,因此函数可以像其他对象一样作为参数传给函数,也可以作为函数的返回值。高阶函数的使用可以使代码更加简洁,提高代码的可读性和可维护性。
map() 函数
map()
是 Python 内置的高阶函数之一,用于对一个可迭代对象(如列表、元组)中的每个元素应用函数,返回一个迭代器(Python3.x 中)。具体使用方式为:
map(function, iterable, ...)
其中,function
是要对每个元素应用的函数,iterable
是要进行操作的可迭代对象。
示例1:
# 将一个列表中的元素转化为它们的平方
nums = [1, 2, 3, 4, 5]
squared_nums = list(map(lambda x: x ** 2, nums))
print(squared_nums)
# Output: [1, 4, 9, 16, 25]
示例2:
# 将一个列表中的所有字符串元素都转化为它们的长度
strings = ["apple", "banana", "cherry"]
lengths = list(map(len, strings))
print(lengths)
# Output: [5, 6, 6]
map() 函数的返回值
map()
函数返回一个迭代器,这个迭代器包含了对原可迭代对象的每个元素应用过函数之后的结果。在 Python 2.x 中,map()
函数返回一个列表。
示例3:
# 使用 map 函数演示字符串拼接
list1 = ['Hello', 'World']
list2 = ['Python', 'Programming']
result = list(map(lambda x, y: x + ' ' + y, list1, list2))
print(result)
# Output: ['Hello Python', 'World Programming']
在示例 3 中,map()
函数接收了两个列表以及一个将两个列表的元素相加的匿名函数。因为两个列表的长度一致,所以函数会以形如 f(x[0], y[0]), f(x[1], y[1]), ...
的方式对它们进行迭代,并将结果存储在一个返回的列表中。
小结
map()
函数是 Python 中非常实用的一个高阶函数,它能够对可迭代对象中的每个元素应用函数并返回结果。掌握了这个函数的使用方式,可以使代码变得更加简洁,并提高其可读性与可维护性。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python高阶函数map() 简介和使用详解 - Python技术站