Python编程基础:第五十七节 reduce函数Reduce
生活随笔
收集整理的這篇文章主要介紹了
Python编程基础:第五十七节 reduce函数Reduce
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
第五十七節 reduce函數Reduce
- 前言
- 實踐
前言
reduce函數的作用是逐項將迭代器的前兩項按照指定方式進行計算,例如我們有一個數字列表[1, 2, 3, 4]我們可以使用reduce函數求這四個數的和,首先計算1+2=3,然后計算3+3=6,最后計算6+4=10。reduce函數的書寫方式為:reduce(function, iterable),第一個參數指定作用方式,第二個參數指定被作用對象,其執行方式相當于:
for i in range(len(iterable)):if len(iterable) != 1:result = function(iterable[0], iterable[1])iterable.remove(iterable[0])iterable.remove(iterable[0])iterable.insert(0, result)else:break實踐
我們首先以字母拼接為字符串為例講解reduce函數的使用方式,首先創建一個全為字母的列表:
import functools letters = ["H", "e", "l", "l", "o"]然后我們通過匿名函數指定字母之間的拼接方式,并通過reduce函數對其進行逐項使用:
word = functools.reduce(lambda x, y: x + y, letters) print(word) >>> Hello可見與下述代碼運行結果相同:
for i in range(len(letters)):if len(letters) != 1:result = letters[0]+letters[1]letters.remove(letters[0])letters[0] = resultelse:breakprint(letters) >>> Hello我們再給出一個數字兩兩相乘的例子:
digits = [1, 2, 3, 4, 5, 6] result = functools.reduce(lambda x, y: x * y, digits) print(result) >>> 720以上便是reduce函數的全部內容,感謝大家的收藏、點贊、評論。我們下一節將介紹遞推式構造列表(List Comprehension),敬請期待~
總結
以上是生活随笔為你收集整理的Python编程基础:第五十七节 reduce函数Reduce的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python编程基础:第五十六节 fil
- 下一篇: Python编程基础:第五十八节 线程T