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

如何将字典列表中单个key对应的多value拆分为独立键值对字典

Python 字典列表拆分实现方案

需求说明

你有如下结构的字典列表:

df = [{'answers': ['Yes', 'No'], 'question': 'status', 'type': 'string'}]

需要将列表中每个字典的answers字段按元素拆分,生成多个新字典,每个新字典的answers仅保留单个元素的列表形式,预期输出如下:

df = [
    {'answers': ['Yes'], 'question': 'status', 'type': 'string'},
    {'answers': ['No'], 'question': 'status', 'type': 'string'}
]

实现代码

通用写法(兼容多字典、answers多元素场景)

res = []
for original_dict in df:
    # 遍历answers的每一个元素
    for answer in original_dict['answers']:
        # 复制原字典的全部字段,避免修改原数据
        new_dict = original_dict.copy()
        new_dict['answers'] = [answer]
        res.append(new_dict)
df = res

逻辑说明

  1. 先初始化空列表res用于存储拆分后的所有新字典
  2. 遍历原列表的每一个原始字典,再遍历该字典answers字段的所有元素
  3. 调用字典的copy()方法复制原始字典的全部键值对,仅修改answers字段为仅包含当前遍历元素的列表
  4. 将新生成的字典追加到结果列表,最终把结果赋值回df变量即可

运行代码后输出的df就是你需要的目标结构,哪怕原列表包含多个字典、或者某个字典的answers有2个以上的元素,该写法都可以正常适配。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 13:15:03