我需要对一个具有变量数量元素的嵌套字典中所有值的总和进行求和,例如:
a = {'val1': 3, 'val2': 4, 'val3': {'val4': 2, 'val5': 1}, 'val6': {'val7': 9, 'val8': {'val6': 43}}}
假设我有一个像上面的字典。 那么我期望得到的输出是:
3+4+2+1+9+43 = 62
我尝试过这个,但我知道它行不通:
dict_sum = 0
for k, v in a.items():
if isinstance(v,dict):
dict_sum += sum(v.values())
else:
dict_sum += v
但是对于包含多个嵌套字典的字典,它将无法工作。 感激不尽,期待您的帮助。
Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<stdin>", line 2, in DeepSum File "<stdin>", line 2, in <listcomp> File "<stdin>", line 2, in DeepSum TypeError: 'int' object is not callable
- Markus