首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从元组列表中累计元组索引n处的所有值?

如何从元组列表中累计元组索引n处的所有值?
EN

Stack Overflow用户
提问于 2020-10-02 04:59:36
回答 5查看 378关注 0票数 1

在下面的代码中,我希望在for循环中添加list=(0,3)、(2,6)、(1,10)的第二个参数。第一次迭代应该是3+6=9,第二次迭代应该添加前一次迭代的输出,即9到10-> 9+10=19,我想要最终的输出S=9,19。我不知道怎么做,我应该在代码中添加另一个循环吗?

代码语言:javascript
运行
复制
T=[(0,3),(2,6),(1,10)]
S=[]
for i in range(len(T)):
    b=T[0][i]+T[0][i+1]
    S.append(b)
EN

Stack Overflow用户

发布于 2020-10-02 06:18:30

这里有一个带有本机递归的解决方案

代码语言:javascript
运行
复制
import operator
mylist =[(0,3),(2,6),(1,10)]

def accumulate(L, i, op):
  def iter(result, rest, out):
    if rest == []:
      return out
    else:
      r = op(result, rest[0][i-1])
      return iter(r, rest[1:], out + [r])
  return iter(L[0][i-1], L[1:], [])

print(accumulate(mylist, 2, operator.add))
print(accumulate(mylist, 1, operator.add))
print(accumulate(mylist, 2, operator.mul))

# ==>
# [9, 19]
# [2, 3]
# [18, 180]
票数 0
EN
查看全部 5 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64166369

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档