python中的accumulate()函數(shù)示例詳解
python中的accumulate()函數(shù)
accumulate 函數(shù)是Python標(biāo)準(zhǔn)庫(kù) itertools 模塊中的一個(gè)函數(shù),用于生成累積計(jì)算的結(jié)果。
accumulate 函數(shù)接受一個(gè)可迭代對(duì)象作為輸入,并返回一個(gè)迭代器,該迭代器產(chǎn)生具有累積值的元素。
語(yǔ)法如下:
itertools.accumulate(iterable, func=operator.add)
其中, iterable 是一個(gè)可迭代對(duì)象,用于生成輸入值序列。 func 是一個(gè)可選的函數(shù),用于指定累積的操作,默認(rèn)為 operator.add ,即使用加法進(jìn)行累積。
下面是一個(gè)例子,展示了 accumulate 函數(shù)的使用:
import itertools
numbers = [1, 2, 3, 4, 5]
accumulated = itertools.accumulate(numbers)
for num in accumulated:
print(num)輸出結(jié)果:
1
3
6
10
15
在上面的例子中,我們使用 accumulate 函數(shù)對(duì) numbers 列表進(jìn)行累積計(jì)算。輸出結(jié)果依次為輸入值的累積和。初始的元素值為 1 ,之后依次進(jìn)行累積計(jì)算: 1+2=3 , 3+3=6 , 6+4=10 , 10+5=15 。
補(bǔ)充:
Python itertools accumulate函數(shù)詳解
一.定義
itertools.accumulate(iterable[, func])
二.解析
iterable是一個(gè)可迭代的對(duì)象,如list等。
accumulate函數(shù)的功能是對(duì)傳進(jìn)來(lái)的iterable對(duì)象逐個(gè)進(jìn)行某個(gè)操作(默認(rèn)是累加,如果傳了某個(gè)fun就是應(yīng)用此fun
比如iterable=[1,2,3,4] 默認(rèn)會(huì)先累加iterable 0~0(1), 然后0~1(1+2),最后0~3(1+2+3)
結(jié)果會(huì)是[1,3,6,10]
注意:accumulate函數(shù)返回是一個(gè)可迭代對(duì)象,可以用在for里面,而不是最后的累加結(jié)果,如果我們想要的是直接的結(jié)果
需要強(qiáng)制轉(zhuǎn)化類(lèi)型,比如轉(zhuǎn)化成list,詳細(xì)可以給下面的示例
三.代碼示例
>>> a=[1,2,3,4,5] >>> b=accumulate(a) ?#默認(rèn)是累加 >>> b ? #這里返回的是一個(gè)可迭代對(duì)象 <itertools.accumulate object at 0x7f3e5c2f4e48> >>> list(b) ? #強(qiáng)制轉(zhuǎn)化 [1, 3, 6, 10, 15] >>>?
傳遞自己想要的操作fun,比如換成乘法
>>> import operator >>> c=accumulate(a,operator.mul) >>> c <itertools.accumulate object at 0x7f3e5c2f4f88> >>> list(c) [1, 2, 6, 24, 120] >>>
到此這篇關(guān)于python中的accumulate()函數(shù)的文章就介紹到這了,更多相關(guān)python accumulate()函數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python遞歸打印某個(gè)目錄的內(nèi)容(實(shí)例講解)
下面小編就為大家?guī)?lái)一篇python遞歸打印某個(gè)目錄的內(nèi)容(實(shí)例講解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-08-08
python 實(shí)現(xiàn)turtle畫(huà)圖并導(dǎo)出圖片格式的文件
今天小編就為大家分享一篇python 實(shí)現(xiàn)turtle畫(huà)圖并導(dǎo)出圖片格式的文件,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12
python3.5 + PyQt5 +Eric6 實(shí)現(xiàn)的一個(gè)計(jì)算器代碼
這篇文章主要介紹了python3.5 + PyQt5 +Eric6 實(shí)現(xiàn)的一個(gè)計(jì)算器代碼,在windows7 32位系統(tǒng)可以完美運(yùn)行 計(jì)算器,有興趣的可以了解一下。2017-03-03
python dict 字典 以及 賦值 引用的一些實(shí)例(詳解)
下面小編就為大家?guī)?lái)一篇python dict 字典 以及 賦值 引用的一些實(shí)例(詳解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-01-01
Python實(shí)現(xiàn)監(jiān)視程序的內(nèi)存使用情況
我們使用Python和它的數(shù)據(jù)處理庫(kù)套件進(jìn)行大量數(shù)據(jù)處理時(shí)候,可能使用了大量的計(jì)算資源,那么如何監(jiān)視程序的內(nèi)存使用情況就顯得尤為重要,下面我們就來(lái)了解一下具體實(shí)現(xiàn)方法吧2023-12-12
python實(shí)現(xiàn)漢諾塔遞歸算法經(jīng)典案例
這篇文章主要大家分享了python實(shí)現(xiàn)漢諾塔遞歸算法經(jīng)典案例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-05-05
pandas篩選某列出現(xiàn)編碼錯(cuò)誤的解決方法
今天小編就為大家分享一篇pandas篩選某列出現(xiàn)編碼錯(cuò)誤的解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-11-11

