新聞中心
如果我們想減少大量代碼的使用,避開頻繁使用循環(huán)語句是一種方法,但也不是沒有別的辦法可以選擇的。小編先給大家一點(diǎn)提示,往函數(shù)方面考慮。沒錯(cuò),我們有專門的函數(shù)可以把列表中的數(shù)據(jù)進(jìn)行細(xì)化,這里用到了映射的思想,所以最終map函數(shù)的代碼都是很簡(jiǎn)短的。下面我們就map在列表中的使用給大家展開講解。

map()方法會(huì)將一個(gè)函數(shù)映射到序列的每一個(gè)元素上,生成新序列,包含所有函數(shù)返回值。
也就是說序列里每一個(gè)元素都被當(dāng)做x變量,放到一個(gè)函數(shù)f(x)里,其結(jié)果是f(x1)、f(x2)、f(x3)......組成的新序列。
通俗的講就是:map()它接收一個(gè)函數(shù) f 和一個(gè) 可迭代對(duì)象(這里理解成 list),并通過把函數(shù) f 依次作用在 list 的每個(gè)元素上,得到一個(gè)新的 list 并返回。
map() 函數(shù)語法:
參數(shù):function -- 函數(shù)、iterable -- 一個(gè)或多個(gè)序列
下面實(shí)例展示map( )用法:
def square(x) : # 計(jì)算平方數(shù) return x ** 2 map(square, [1,2,3,4,5]) # 計(jì)算列表各個(gè)元素的平方
結(jié)果返回:[1, 4, 9, 16, 25]
map(lambda x: x ** 2, [1, 2, 3, 4, 5]) # 使用 lambda 匿名函數(shù)
結(jié)果:[1, 4, 9, 16, 25]
# 提供了兩個(gè)列表,對(duì)相同位置的列表數(shù)據(jù)進(jìn)行相加 map(lambda x, y: x + y, [1, 3, 5, 7, 9], [2, 4, 6, 8, 10])
結(jié)果:[3, 7, 11, 15, 19]
在使用map函數(shù)前,最先需要理解的就是其中用到的映射過程,關(guān)于映射這點(diǎn)在數(shù)學(xué)中都有講過,如果沒學(xué)會(huì)的可以看看我們上面的映射分析圖片,今天關(guān)于map對(duì)列表代碼進(jìn)行簡(jiǎn)化的方法到這里就結(jié)束啦。
文章標(biāo)題:創(chuàng)新互聯(lián)Python教程:map如何對(duì)python3代碼進(jìn)行簡(jiǎn)潔化處理?
本文鏈接:http://m.fisionsoft.com.cn/article/ccicghe.html


咨詢
建站咨詢
