Python 在字典中的列表值中添加整数

Python 在字典中的列表值中添加整数,python,list,dictionary,key-value,Python,List,Dictionary,Key Value,鉴于: 我遇到了一个问题,我必须返回一个更新的字典,其中包含列表值中元素的总和及其键。 例如,第一个密钥对: a_dict = {3: [3, 7], 7: [6, 2], 2: [2, 1], 8: [-3, 9]} 将变成这样: 3: [3, 7] 返回的更新字典应如下所示: 3: 10 我不确定是否应该使用values方法来分离这些值,以从列表值中获得数字的总和。使用dict理解: {3: 10, 7: 8, 2: 3, 8: 6} for key, val in a_dict.i

鉴于:

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

a_dict = {3: [3, 7], 7: [6, 2], 2: [2, 1], 8: [-3, 9]}
将变成这样:

3: [3, 7]
返回的更新字典应如下所示:

3: 10

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

使用dict理解:

{3: 10, 7: 8, 2: 3, 8: 6}
for key, val in a_dict.items():
    a_dict[key] = sum(val)

这里的问题是,您在迭代dict时正在对其进行变异。考虑迭代一个副本,或者创建一个新的DICT。
{k: sum(v) for k, v in a_dict.items()}
# {3: 10, 7: 8, 2: 3, 8: 6}