对于我的第一个实际项目,我试图创建一个在Python IDLE中运行的简单增量游戏。我遇到了一个问题,我需要获取嵌套字典中多个值的总和并卡住。

这是我正在使用的字典:

clickers = {
'': None,
'wooden_sword': {
    'owned': 5,
    'power': 1,
    'price': 5,
    },
'iron_sword': {
    'owned': 10,
    'power': 2.5,
    'price': 10,
    },
}


我想知道是否有可能仅获取owned值的总和并将其保存到变量中。

wooden_swordowned值等于5,键iron_swordowned值等于10,我想将这些值求和并将其保存到等于其解的变量中。

最佳答案

我认为您需要:

sum_ = 0
for k,v in clickers.items():
    if v:        # to ignore None
        try:     # this to avoid key error
            sum_ += v['owned']
        except:
            pass
print(sum_)

10-02 21:29