1. 程式人生 > 其它 >python中map()函式的用法

python中map()函式的用法

技術標籤:python常見問題

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)

結果如下:

由此可見當可迭代物件有多個時,最後返回的物件中元素個數由最短的可迭代物件的長度決定。