📅  最后修改于: 2023-12-03 15:07:56.012000             🧑  作者: Mango
在Python中,我们可以使用列表进行多个字典的计算。计算时需要注意相同键名的情况,可以选择直接替换、求和、取平均数等方法进行计算。
下面是一个简单的示例:
# 新建两个字典
dict1 = {"a": 10, "b": 20, "c": 30}
dict2 = {"a": 5, "b": 10, "d": 15}
# 将上面的两个字典放入列表中
dict_list = [dict1, dict2]
# 定义一个新字典,将列表中的字典相加
result_dict = {}
for d in dict_list:
for k, v in d.items():
result_dict[k] = result_dict.get(k, 0) + v
print(result_dict)
上面的代码将两个字典进行了相加,如果键名相同则相加,否则新增键值对。运行后输出如下:
{'a': 15, 'b': 30, 'c': 30, 'd': 15}
此外,如果想要将相同键名的值求和或者取平均值,可以使用如下代码:
# 新建两个字典
dict1 = {"a": 10, "b": 20, "c": 30}
dict2 = {"a": 5, "b": 10, "d": 15}
# 将上面的两个字典放入列表中
dict_list = [dict1, dict2]
# 定义一个新字典,将列表中的字典相加
result_dict = {}
for d in dict_list:
for k, v in d.items():
if k in result_dict:
result_dict[k].append(v)
else:
result_dict[k] = [v]
# 对结果字典中相同键名的值进行求和和平均值计算
for k, v in result_dict.items():
sum_val = sum(v)
mean_val = sum(v) / len(v)
result_dict[k] = {"sum": sum_val, "mean": mean_val}
print(result_dict)
运行后输出如下:
{'a': {'sum': 15, 'mean': 7.5},
'b': {'sum': 30, 'mean': 15.0},
'c': {'sum': 30, 'mean': 30.0},
'd': {'sum': 15, 'mean': 15.0}}
以上就是在Python中的列表中计算字典的内容,希望对您有所帮助。