在Python中,map()
函數(shù)可以用來將一個(gè)函數(shù)應(yīng)用于一個(gè)可迭代對(duì)象(例如列表),并返回一個(gè)由函數(shù)應(yīng)用結(jié)果組成的新的可迭代對(duì)象。map()
函數(shù)的語法如下:
map(function, iterable)
其中,function
表示要應(yīng)用的函數(shù),iterable
表示要迭代的對(duì)象。下面是一個(gè)例子:
def square(x):
return x ** 2
numbers = [1, 2, 3, 4, 5]
squared_numbers = map(square, numbers)
print(list(squared_numbers)) # 輸出:[1, 4, 9, 16, 25]
在上面的例子中,我們定義了一個(gè)函數(shù)square()
,該函數(shù)接受一個(gè)參數(shù)并返回其平方值。然后,我們使用map()
函數(shù)將square()
函數(shù)應(yīng)用于列表numbers
中的每個(gè)元素,并將結(jié)果存儲(chǔ)在squared_numbers
中。最后,我們將squared_numbers
轉(zhuǎn)換為列表并打印出來。
除了使用普通的函數(shù),我們還可以使用匿名函數(shù)(lambda函數(shù))作為map()
函數(shù)的參數(shù)。下面是一個(gè)使用匿名函數(shù)的例子:
numbers = [1, 2, 3, 4, 5]
doubled_numbers = map(lambda x: x * 2, numbers)
print(list(doubled_numbers)) # 輸出:[2, 4, 6, 8, 10]
在上面的例子中,我們使用了一個(gè)匿名函數(shù)來將列表numbers
中的每個(gè)元素乘以2,并將結(jié)果存儲(chǔ)在doubled_numbers
中。最后,我們將doubled_numbers
轉(zhuǎn)換為列表并打印出來。