python中的map函數


1 map()函數的簡介以及語法:
map是python內置函數,會根據提供的函數對指定的序列做映射。

map()函數的格式是:

map(function,iterable,...)
第一個參數接受一個函數名,后面的參數接受一個或多個可迭代的序列,返回的是一個集合。

把函數依次作用在list中的每一個元素上,得到一個新的list並返回,map不改變原list,而是返回一個新list。

2 map()函數實例:
del square(x):
return x ** 2
map(square,[1,2,3,4,5])

# 結果如下:
[1,4,9,16,25]


使用lambda匿名函數的方法使用map()函數更為常見

map(lambda x, y: x+y,[1,3,5,7,9],[2,4,6,8,10])
# 結果如下:
[3,7,11,15,19]
通過lambda函數使返回值是一個元組:

map(lambdax, y : (x**y,x+y),[2,4,6],[3,2,1])
# 結果如下
[(8,5),(16,6),(6,7)]


當不傳入function時,map()就等同於zip(),將多個列表相同位置的元素歸並到一個元組:

map(None,[2,4,6],[3,2,1])
# 結果如下
[(2,3),(4,2),(6,1)]


通過map還可以實現類型轉換

將元組轉換為list:

map(int,(1,2,3))

# 結果如下:
[1,2,3]
將字符串轉換為list:

map(int,'1234')
# 結果如下:
[1,2,3,4]


提取字典中的key,並將結果放在一個list中,value值不能直接提取,需要通過index來提取:

map(int,{1:2,2:3,3:4})
# 結果如下
[1,2,3]
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM