我有一本叫做tempDict
的字典,它被这样填充:
tempDict = {'a': 100, 'b': 200, 'c': 120, 'b_ext1': 4, 'd': 1021, 'a_ext1': 21, 'f_ext1': 12}
在我的设置中,我需要遍历键,如果对于任何带有'_ext1'后缀的键,我想重写或创建一个新字典,保留一个未更改的键(最好不带'ext1'),但合并值。
即:
newDict = {'a': 121, 'b': 204, 'c': 120, 'd': 1021, 'f_ext1':12}
注意,字典中的最后一个条目应该保持不变,因为没有
'f'
后缀不为'_ext1'
值本身不会是整数,但是操作类似。
有人有什么想法吗?
最佳答案
newDict = {}
for k in tempDict:
if k.endswith("_ext1") and k[:-5] in tempDict:
newDict[k[:-5]] = newDict.get(k[:-5],0)+tempDict[k]
else:
newDict[k] = newDict.get(k,0)+tempDict[k]