📜  在Python中的列表中计算字典(1)

📅  最后修改于: 2023-12-03 15:07:56.012000             🧑  作者: Mango

在Python中的列表中计算字典

在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中的列表中计算字典的内容,希望对您有所帮助。