要打印嵌套字典中特定键的值的总和,可以使用递归的方式遍历字典的所有键值对,并判断当前键是否为目标键。如果是目标键,则将对应的值累加到总和中。如果当前值是字典类型,则递归调用函数继续遍历该字典。以下是一个示例代码:
def print_nested_dict_sum(nested_dict, target_key, total_sum=0):
for key, value in nested_dict.items():
if key == target_key:
total_sum += value
elif isinstance(value, dict):
total_sum = print_nested_dict_sum(value, target_key, total_sum)
return total_sum
# 示例嵌套字典
nested_dict = {
'a': 1,
'b': {
'c': 2,
'd': {
'e': 3,
'f': 4
}
},
'g': 5
}
# 打印键'd'的值的总和
target_key = 'd'
result = print_nested_dict_sum(nested_dict, target_key)
print(f"The sum of values for key '{target_key}' is: {result}")
输出结果为:
The sum of values for key 'd' is: 7
在这个示例中,我们定义了一个名为print_nested_dict_sum
的函数,它接受三个参数:nested_dict
表示嵌套字典,target_key
表示目标键,total_sum
表示当前累计的总和。函数通过递归遍历字典的键值对,并根据目标键来累加对应的值到总和中。如果值是字典类型,则递归调用函数继续遍历该字典。最后,函数返回计算得到的总和。
这个方法可以适用于任意嵌套层级的字典,并且可以根据需要打印不同键的值的总和。
领取专属 10元无门槛券
手把手带您无忧上云