新聞中心
map()函數(shù)接收兩個參數(shù),一個是函數(shù),一個是Iterable,map將傳入的函數(shù)依次作用到序列的每個元素,并把結(jié)果作為新的Iterator返回。

富縣ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18980820575(備注:SSL證書合作)期待與您的合作!
現(xiàn)在,我們用Python代碼實現(xiàn):
>>> def f(x):... return x * x ...>>> r = map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> list(r) [1, 4, 9, 16, 25, 36, 49, 64, 81]
map()傳入的第一個參數(shù)是f,即函數(shù)對象本身。由于結(jié)果r是一個Iterator,Iterator是惰性序列,因此通過list()函數(shù)讓它把整個序列都計算出來并返回一個list。
你可能會想,不需要map()函數(shù),寫一個循環(huán),也可以計算出結(jié)果:
L = []for n in [1, 2, 3, 4, 5, 6, 7, 8, 9]: L.append(f(n)) print(L)
的確可以,但是,從上面的循環(huán)代碼,能一眼看明白“把f(x)作用在list的每一個元素并把結(jié)果生成一個新的list”嗎?
所以,map()作為高階函數(shù),事實上它把運算規(guī)則抽象了,因此,我們不但可以計算簡單的f(x)=x2,還可以計算任意復雜的函數(shù),比如,把這個list所有數(shù)字轉(zhuǎn)為字符串:
>>> list(map(str, [1, 2, 3, 4, 5, 6, 7, 8, 9])) ['1', '2', '3', '4', '5', '6', '7', '8', '9']
只需要一行代碼。python學習網(wǎng),免費的python學習網(wǎng)站,歡迎在線學習!
標題名稱:創(chuàng)新互聯(lián)Python教程:python中map函數(shù)怎么顯示結(jié)果
當前網(wǎng)址:http://www.dlmjj.cn/article/cddsjjo.html


咨詢
建站咨詢
