利用Python的reduce()函數應用於序列元素,簡化程式碼

Python 中的 reduce() 函數

Python 中的 reduce() 函數可以將函數应用於序列中的所有元素,並逐步縮小序列。它是一個內建函數,可以將一個函數作用於一個序列的所有元素上,並把結果累積起來。

在 Python 中,reduce() 函數可以接收兩個參數:一個函數和一個序列。它將函數作用於序列中的每個元素,並將結果累積起來。

舉個例子,假設我們有一個序列,其中包含了數字 1 到 10,我們可以使用 reduce() 函數來將它們相加:

from functools import reduce

nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

sum = reduce(lambda x, y: x + y, nums)

print(sum) # 55

在這個例子中,我們使用了 lambda 函數來將序列中的元素相加,並將結果累積起來。

除了可以用於數字之外,reduce() 函數也可以用於字串,例如,我們可以使用它來將一個字串中的所有字母轉換為大寫:

from functools import reduce

string = 'Hello World'

upper_string = reduce(lambda x, y: x + y.upper(), string, '')

print(upper_string) # HELLO WORLD

在這個例子中,我們使用了 lambda 函數來將字串中的每個字母轉換為大寫,並將結果累積起來。

總結來說,Python 中的 reduce() 函數可以將函數应用於序列中的所有元素,並逐步縮小序列,使用它可以簡單地對序列中的元素進行處理,並將結果累積起來。

發佈留言