【问题标题】:Python: Adding within listsPython:在列表中添加
【发布时间】:2013-07-27 16:43:27
【问题描述】:

可能是我还没睡,但我找不到解决这个问题的方法,所以我来找大家。我有一个列表,其中包含一系列子列表,每个子列表包含两个值,如下所示:

list = (
  (2, 5),
  (-1, 4),
  ( 7, -3)
  )

我还有一个变量,一个有两个值的类似列表,就是这样:

var = (0, 0)

我想把 list 中的所有 x 值相加,然后将所有 y 值相加,然后将和存储在 var 中,这样 的期望值var 是:

var = (8, 6)

我该怎么做?如果答案很简单,我深表歉意,我只需要在睡觉前完成这个。

【问题讨论】:

    标签: python arrays list sum sublist


    【解决方案1】:
    sumvar = map(sum,zip(*my_list))
    

    应该按照你的想法去做

    【讨论】:

      【解决方案2】:

      对我来说,这听起来像是“减少”的工作:

      reduce(lambda a,b: (a[0]+b[0],a[1]+b[1]), list)
      (8,6)
      

      您还可以使用另一种列表理解方法,(更具可读性):

      sum(a for a,b in tpl), sum(b for a,b in tpl)
      (8,6)
      

      【讨论】:

        猜你喜欢
        • 2016-01-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-18
        • 2022-01-01
        • 2014-01-23
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多