gpt4 book ai didi

python - 从字典中查找后的同名值求和

转载 作者:行者123 更新时间:2023-12-03 18:40:48 25 4
gpt4 key购买 nike

一个字符串列表,也就是字符串的那部分,是字典中的一个键。我想通过键从字典中返回值,然后对这些值求和。

d = {"2016_05" : 665,
"2016_04" : 462,
"2015_03" : 568,
"2015_08" : 895}

for a in ['Toyota_2015_03', 'Toyota_2015_04', 'Kia_2016_01', 'Kia_2016_04', 'Kia_2016_05']:
name, year, month = a.split('_')
sales = d.get(year + '_' + month)

if sales is not None:
print (name + '_' + str(sales))

输出:

Toyota_568
Kia_462
Kia_665

我想通过“Kia”和“Toyota”对数字求和(即某种形式以获得起亚:1127,丰田:568)。什么是继续的好方法?谢谢。

最佳答案

你可以使用字典来保存你的输出:

result = {}
for e in data:
name, year_month = e.split('_', 1)
result[name] = result.get(name, 0) + d.get(year_month, 0)

result

输出:

{'Toyota': 568, 'Kia': 1127}

如果 year_month 不在变量 d 中,您不想使用 0 作为值的键,您可以使用:

result = {}
for e in data:
name, year_month = e.split('_', 1)
sales = d.get(year_month, None)

if sales is not None:
result[name] = result.get(name, 0) + sales

关于python - 从字典中查找后的同名值求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60202789/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com