我希望列印串列的所有連續負值的總和
例子
lst = [1,-1,-3,2,3,4,-5,-1,-3,5,-3,-1,5,4]
我想列印總和:
(-1, -3) ;(-5,-1,-3); (-3,-1)
uj5u.com熱心網友回復:
itertools.groupby在串列推導中使用:
lst = [1,-1,-3,2,3,4,-5,-1,-3,5,-3,-1,5,4]
from itertools import groupby
out = [sum(g) for k,g in groupby(lst, lambda x: x<0) if k]
輸出:[-4, -9, -4]
uj5u.com熱心網友回復:
def sum_consecutive(values):
accumulator = 0
for value in values:
if value >= 0:
if accumulator != 0:
print(accumulator)
accumulator = 0
else:
accumulator = value
應該管用
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/452130.html
標籤:Python python-3.x 列表 和
