目錄
什麼是 Python 中的 map() 函數?
Python 中的 map() 函數是一個非常有用的工具,它可以將一個函數映射到一個序列的每個元素上。它可以讓你更快速、更容易地對序列中的每個元素執行相同的操作,而不需要使用迴圈。
舉個例子來說,假設你有一個數字序列,並且想要對每個數字求平方:
numbers = [1, 2, 3, 4, 5]
如果你使用迴圈,你可以這樣做:
squares = []
for num in numbers:
squares.append(num ** 2)
print(squares)
# [1, 4, 9, 16, 25]
但是,你可以使用 map() 函數來簡化這個過程:
squares = list(map(lambda num: num ** 2, numbers))
print(squares)
# [1, 4, 9, 16, 25]
map() 函數會將傳入的函數(在這個例子中是 lambda 函數)映射到序列中的每個元素上,並返回一個由結果組成的新序列。
另外,你也可以將 map() 函數與其他函數結合使用,例如 filter() 函數:
even_squares = list(map(lambda num: num ** 2, filter(lambda num: num % 2 == 0, numbers)))
print(even_squares)
# [4, 16]
這個範例中,filter() 函數會將傳入的函數(在這個例子中是 lambda 函數)應用到序列中的每個元素上,並返回一個只包含符合條件的元素的新序列。然後,map() 函數會將傳入的函數(在這個例子中是 lambda 函數)應用到新序列中的每個元素上,並返回一個由結果組成的新序列。
總結來說,Python 中的 map() 函數是一個非常有用的工具,它可以讓你更快速、更容易地對序列中的每個元素執行相同的操作,而不需要使用迴圈。它也可以與其他函數結合使用,來創建更複雜的函數。