如何将两个具有相同键的字典合并为一个新的字典,其中键的值由这两个字典的值组成?

如何将两个具有相同键的字典合并为一个新的字典,其中键的值由这两个字典的值组成?

python相同键的两个字典合并

本文将讨论如何将两个具有相同键的字典合并为一个新的字典,其中键的值由这两个字典的值组成。

问题

我们有两个字典:

  • num_name:键是学生学号,值是姓名。
  • num_bmi:键是学生学号,值是 bmi 值。

目标是创建一个新的字典,其中键是学号,值是姓名和 bmi 组成的元组。

解决方案

为了合并这两个字典,我们可以使用以下步骤:

# 创建一个新字典
new = {}

# 遍历 num_name 中的每个键
for i in num_name:
    # 遍历 num_bmi 中的每个键
    for j in num_bmi:
        # 如果两个键相同,则将姓名和 bmi 值添加到 new 中
        if i == j:
            new[i] = (num_name[i], num_bmi[j])

# 打印 new 字典
print(new)

改进后的代码

num_name = {100: "王一", 101: "李二", 102: "张三", 103: "钱四", 104: "孙五", 105: "马六"}
num_bmi = {102: 25.8, 100: 18, 105: 21, 104: 22}

new = {}

for i in num_name:
    for j in num_bmi:
        if i == j:
            new[i] = (num_name[i], num_bmi[i])

print(new)

上面的代码将成功合并这两个字典并打印出以下结果:

{100: ('王一', 18), 102: ('张三', 25.8), 104: ('孙五', 22), 105: ('马六', 21)}

以上就是如何将两个具有相同键的字典合并为一个新的字典,其中键的值由这两个字典的值组成?的详细内容,更多请关注其它相关文章!