【发布时间】:2019-11-07 17:05:24
【问题描述】:
我有一个字典,其中每个键的值都是 int。我也将总数存储在一个变量中。我想获得每个值代表变量的百分比,并将百分比作为同一键的另一个值返回到字典。
我尝试提取列表中的值,然后执行操作并将结果附加到另一个列表。但我不知道如何将该列表附加到字典中。
total = 1000
d = {"key_1":150, "key_2":350, "key_3":500}
lst = list(d.values())
percentages = [100 * (i/total) for i in lst]
# Desired dictionary
d
{"key_1": [15%, 150],
"key_2": [35%, 350],
"key_3": [50%, 500]
}
【问题讨论】:
-
你可以这样做...
d["key_1"].append(percentages)你可以创建一个循环遍历百分比列表,因此你可以为每个key_1添加一个百分比。如果这不能回答您的问题,请告诉我,我会回来的! -
@McFloofenbork:这会将所有
percentages仅放在key_1上,无论如何它都不起作用(因为原始dict有int值,而不是list值)。 -
@ShadowRanger 我看你是对的。嗯
标签: python list dictionary append percentage