1 map()函數(shù)的簡介以及語法:
map是python內(nèi)置函數(shù)须尚,會根據(jù)提供的函數(shù)對指定的序列做映射啰劲。
map()函數(shù)的格式是:
map(function,iterable,...)
第一個參數(shù)接受一個函數(shù)名劣摇,后面的參數(shù)接受一個或多個可迭代的序列配阵,返回的是一個集合。
把函數(shù)依次作用在list中的每一個元素上,得到一個新的list并返回剧蹂。注意爆安,map不改變原list,而是返回一個新list怀偷。
2 map()函數(shù)實(shí)例:
del square(x):
? ? return x ** 2
map(square,[1,2,3,4,5])? ?-----要打印結(jié)果需要 print(*map(square,[1,2,3,4,5])),這塊打印了再打印就會為空
# 結(jié)果如下:
[1,4,9,16,25]
通過使用lambda匿名函數(shù)的方法使用map()函數(shù):
map(lambda x, y: x+y,[1,3,5,7,9],[2,4,6,8,10])
# 結(jié)果如下:
[3,7,11,15,19]
通過lambda函數(shù)使返回值是一個元組:
map(lambdax, y : (x**y,x+y),[2,4,6],[3,2,1])
# 結(jié)果如下
[(8,5),(16,6),(6,7)]
當(dāng)不傳入function時家厌,map()就等同于zip(),將多個列表相同位置的元素歸并到一個元組:
map(None,[2,4,6],[3,2,1])
# 結(jié)果如下
[(2,3),(4,2),(6,1)]
通過map還可以實(shí)現(xiàn)類型轉(zhuǎn)換
將元組轉(zhuǎn)換為list:
map(int,(1,2,3))
# 結(jié)果如下:
[1,2,3]
將字符串轉(zhuǎn)換為list:
map(int,'1234')
# 結(jié)果如下:
[1,2,3,4]
提取字典中的key椎工,并將結(jié)果放在一個list中:
map(int,{1:2,2:3,3:4})
# 結(jié)果如下
[1,2,3]
原文鏈接:https://blog.csdn.net/quanlingtu1272/article/details/95482253