python中的reduce函式

2021-10-25 08:24:49 字數 1169 閱讀 9807

1.語法

在python3中,內建函式中已經沒有reduce了。要使用reduce,需要從functools模組裡引入

可以看到,reduce有三個引數,第乙個是函式function,第二個是序列sequence,第三個是initial,為初始值,預設為none

2.作用

對序列中的元素進行累積

3.返回值

返回函式的計算結果

4.例子

'''

'''from functools import

reduce

from functools import

reduce

defadd

(x, y)

:return x + y

print

(reduce

(add,[1

,2,3

,4,5

]))#計算過程 ((((1 + 2) + 3) + 4) + 5)

# 執行結果

15

在reduce中使用lambda函式

'''

'''from functools import

reduce

print

(reduce

(lambda x, y: x + y,[1

,2,3

,4,5

]))# 執行結果

15

有初始值的情況,初始值為6

from functools import

reduce

print

(reduce

(lambda x, y: x + y,[1

,2,3

,4,5

],6)

)# 執行結果

21#計算過程6+

1=77

+2=9

9+3=

1212+4

=1616+

5=21

python 的map和reduce(高階函式)

map 函式接受兩個引數,乙個是函式 f 乙個是可迭代物件iterable map將傳入的函式依次作用到序列的每個元素,並把結果作為新的迭代器iterator 返回 例如 def f x return x x r map f,1,2,3,4,5 r 是乙個迭代器 list r 將r變成list 注意...

python中的reduce介紹

python中的reduce內建函式是乙個二元操作函式,他用來將乙個資料集合 鍊錶,元組等 中的所有資料進行下列操作 用傳給reduce中的函式 func 必須是乙個二元操作函式 先對集合中的第1,2個資料進行操作,得到的結果再與第三個資料用func 函式運算,最後得到乙個結果。如 def myad...

python中的reduce函式

python中的reduce python中的reduce內建函式是乙個二元操作函式,他用來將乙個資料集合 鍊錶,元組等 中的所有資料進行下列操作 用傳給reduce中的函式 func 必須是乙個二元操作函式 先對集合中的第1,2個資料進行操作,得到的結果再與第三個資料用func 函式運算,最後得到...