
Map & Reduce.jpg
一、Map
讓我們先來一個問題,如何將a=[1,2,3,5,6]這個數(shù)組,轉(zhuǎn)換成字符型的數(shù)組?
1.1 解法1
a=[1,2,3,5,6]
b=[str(i) for i in a]
print(b)
['1', '2', '3', '5', '6']
1.2 解法2
a=[1,2,3,5,6]
b=list(map(str,a))
print(b)
['1', '2', '3', '5', '6']
兩種方法似乎都很好的解決了這個問題,那么Map比列表解析強在哪里呢?
list(map(lambda x,y:x*y,[1,2,3],[4,5,6]))
[4, 10, 18]
Map能接收多個Iterable,而列表解析一般只接受一個數(shù)組。
這是我自己找的栗子,如果有不對的地方,歡迎留言打臉啊

歡迎反復(fù)打臉.jpg
1.3 函數(shù)用法
- map()函數(shù)接收兩個參數(shù),一個是函數(shù),一個是 Iterable,
- map 將傳入的函數(shù)依次作用到序列的每個元素,并把結(jié)果作為新的Iterator 返回
二、Reduce
- 對于Reduce的介紹,我覺得不需要進行介紹了,因為Reduce已經(jīng)不在Python3 的標準庫里了
- 原因居然是:
因為
Guido先生討厭reduce。(Because Guido [hates it]
(http://www.artima.com/weblogs/viewpost.jsp?thread=98196)

Reduce就被干掉了.png
秉承寧缺毋濫的精神,就暫且介紹這么多吧。
如果喜歡就給我點個贊唄,你的喜歡是我繼續(xù)分享的動力