【问题标题】:Aggregating python dictionaries聚合python字典
【发布时间】:2014-12-31 14:51:01
【问题描述】:

我有以下列表,它由多个字典组成(为简单起见,本例中为 2 个)。

bz_list = [{'ID': 't1', 'WordCount':2},{'ID': 't2','WordCount':5}]

在 Python 中,我想对整个列表中的“WordCount”字段求和。我期待这样的事情能够奏效。

[sum(item['WordCount']) for item in bz_list]

但是,我收到以下错误消息 - TypeError: 'int' object is not iterable。

关于如何实现这一目标的任何想法?提前谢谢你。

  • 比尔

【问题讨论】:

    标签: python list dictionary summary


    【解决方案1】:

    sum() 应该针对字数(可迭代)而不是单个字数(int):

    >>> bz_list = [{'ID': 't1', 'WordCount':2},{'ID': 't2','WordCount':5}]
    >>> sum(x['WordCount'] for x in bz_list)
    7
    

    【讨论】:

      【解决方案2】:

      如何总结列表,而不是单独列出每个成员:

      sum([item['WordCount'] for item in bz_list])
      

      sum 期望可以添加可迭代的谁的项目。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-03-08
        • 2014-08-03
        • 2021-11-05
        • 1970-01-01
        • 1970-01-01
        • 2019-07-24
        • 1970-01-01
        相关资源
        最近更新 更多