You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何计算字典中指定多个键对应的数值总和

Python 字典指定键求和实现方案

现有代码问题

你当前编写的food_calories_sum函数存在两个核心问题:

  • 没有定义入参接收需要查询的指定食物名称列表
  • 遍历字典时第一次循环就直接返回键名,没有做任何数值累加逻辑,完全不符合求和需求

正确实现代码

带容错提示版本

适合无法确认指定食物是否全部在字典内的场景,遇到未收录的食物会自动跳过并给出提示:

food_calories = {"Burger": 400, "Ice Cream": 350, "Cake": 640, "Chicken": 400, "Rice": 250, "Salad": 40, "Fanta": 170, "Coke": 200, "Beef": 350}

def food_calories_sum(calorie_dict, target_foods):
    total_calories = 0
    for food in target_foods:
        if food in calorie_dict:
            total_calories += calorie_dict[food]
        else:
            print(f"提示:{food} 未收录在卡路里字典中,已跳过计算")
    return total_calories

# 测试用例
target = ["Ice Cream", "Chicken", "Beef"]
print(food_calories_sum(food_calories, target)) # 输出 1100

简洁版本

确认所有指定食物都在字典内时可直接使用,代码更精简:

def food_calories_sum(calorie_dict, target_foods):
    return sum(calorie_dict[food] for food in target_foods)

内容的提问来源于stack exchange,提问作者Helene

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 02:48:01