filter()函數接收兩個參數,分別爲一個函數f與一個sequence(list)。
f函數接收一個參數,其做用是對list中的每一個元素進行判斷以返回True或False,filter函數會根據返回值過濾list中的元素以組成一個新的list。
例如:函數
# 輸入:list_test[-1, 0, 1] filter(lambda x: x>0, list_test) # 輸出:[0, 1]
map()函數接收兩個參數,分別爲一個函數f與一個sequence(list)。
f函數接收一個參數,其做用爲對list中的每一個元素進行相應運算,filter函數會根據返回值從新生成一個新的list。
例如:code
# 輸入:list_test[1, 2, 3] map(lambda x: x*x, list_test) # 輸出:[1, 4, 9]
reduce()函數接收三個參數,分別爲一個函數f、sequence(list)、初始值(可選)
f函數接收兩個參數,並對這兩個參數進行邏輯運算。reduce函數會對list中的元素反覆調用f函數。
例如:test
# 輸入:list_test[1, 2, 3] reduce(lambda x, y: x*y, list_test) # 輸出:6 # 輸入:list_test[1, 2, 3] reduce(lambda x, y: x*y, list_test, 0) # 輸出:0