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

Python使用嵌套循环访问字典实现指定格式键值输出

原代码问题分析

你写的代码存在两层逻辑错误:

  1. 内层直接遍历dic.values()获取到的是字典所有值的列表,不是当前遍历键对应的单个食材列表
  2. 把值列表直接作为索引传入dic[itm][val],类型不匹配会直接抛出报错

调整后代码

场景1:输出每个分类下所有食材的对应关系

dic = {"Vegetables":["Carrots","Broccoli","Mushrooms"], "fruits":["Apples ","Citrus"]}
# 先遍历字典的键值对,category为分类名,foods为对应分类下的食材列表
for category, foods in dic.items():
    # 遍历当前分类下的每一个食材
    for food in foods:
        # 去除食材名前后的多余空格
        food = food.strip()
        print(f"{food} are {category}")

运行输出:

Carrots are Vegetables
Broccoli are Vegetables
Mushrooms are Vegetables
Apples are fruits
Citrus are fruits

场景2:仅输出每个分类下的第一个食材(和你给出的示例完全一致)

dic = {"Vegetables":["Carrots","Broccoli","Mushrooms"], "fruits":["Apples ","Citrus"]}
for category, foods in dic.items():
    # 直接取每个分类列表的第一个元素,去除多余空格后打印
    food = foods[0].strip()
    print(f"{food} are {category}")

运行输出:

Carrots are Vegetables
Apples are fruits

内容的提问来源于stack exchange,提问作者Jeff B.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 03:54:07