【问题标题】:Adding integers inside list values within a dictionary在字典中的列表值内添加整数
【发布时间】:2019-12-14 15:08:44
【问题描述】:

给定:

a_dict = {3: [3, 7], 7: [6, 2], 2: [2, 1], 8: [-3, 9]}

我遇到了一个问题,我必须返回一个更新的字典,其中包含列表值中元素的总和及其键。 例如第一个密钥对:

3: [3, 7]

要变成这样:

3: 10

返回的更新字典应如下所示:

{3: 10, 7: 8, 2: 3, 8: 6}

我不确定是否应该使用 values 方法来隔离值以从列表值中获取数字的总和。

【问题讨论】:

    标签: python list dictionary key-value


    【解决方案1】:

    使用字典理解:

    {k: sum(v) for k, v in a_dict.items()}
    # {3: 10, 7: 8, 2: 3, 8: 6}
    

    【讨论】:

      【解决方案2】:
      for key, val in a_dict.items():
          a_dict[key] = sum(val)
      

      【讨论】:

      • 这里的麻烦是你在迭代它时改变了字典。考虑迭代一个副本,或者制作一个新的字典。
      猜你喜欢
      • 1970-01-01
      • 2023-03-27
      • 2018-08-27
      • 2015-04-02
      • 2021-10-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-29
      相关资源
      最近更新 更多