python中map()函数的用法

map() 会根据提供的函数对指定序列做映射。

map(function, iterable, ...)
  • function -- 函数
  • iterable -- 一个或多个序列

可迭代对象只有一个时:

a = [1, 2, 3, 4, 5, 6, 7, 8, 9]

# 对a内部的元素进行平方

new_a = map(lambda i: i * i, a)

for n in new_a:
    print(n)

结果如下:

可迭代对象有多个时:

a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
b = [10, 20, 30, 40]


new_a = map(lambda i, j, k: i * j, a, b, )

for n in new_a:
    print(n)

结果如下:

a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
b = [10, 20, 30, 40]
c = [100, 200, 300]

new_a = map(lambda i, j, k: i * j + k, a, b, c)

for n in new_a:
    print(n)

结果如下:

a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
b = [10, 20, 30, 40]
c = [100, 200, 300]
d = [1000, 2000, 3000, 4000]
new_a = map(lambda i, j, k, l: i * j + k + l, a, b, c, d)

for n in new_a:
    print(n)

结果如下:

由此可见当可迭代对象有多个时,最后返回的对象中元素个数由最短的可迭代对象的长度决定。

猜你喜欢

转载自blog.csdn.net/qq_39197555/article/details/112206294
今日推荐