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

如何将列表中多个含Name键的字典嵌套到Parent Name键下?

问题与解决方法

问题说明

现有Python列表data_1,元素为多个包含'Name'键的字典:

data_1 = [{'Name': 'value 1'},{'Name': 'value 2'},{'Name': 'value 3'}]

需要将所有'Name'及其对应值嵌套到'Parent Name'键下,目标结构如下(注意:该结构存在Python字典键唯一性冲突):

[{'Parent Name':{ 'Name': 'value 1', 'Name': 'value 2', 'Name': 'value 3'}}]

关键注意点

Python字典的键是唯一的,如果直接创建包含多个相同'Name'键的字典,后面的键值对会完全覆盖前面的。你给出的目标结构实际运行后,'Parent Name'下只会保留最后一组'Name': 'value 3'。如果要保留所有值,建议将Name对应的值存储为列表,这是更合理的处理方式。

解决方案

方案1:按目标结构实现(存在键覆盖)

如果坚持要生成你指定的结构,代码如下(但会出现覆盖问题):

data_1 = [{'Name': 'value 1'},{'Name': 'value 2'},{'Name': 'value 3'}]

parent_content = {}
# 遍历合并所有Name键值对,重复键会被覆盖
for item in data_1:
    parent_content.update(item)

result = [{'Parent Name': parent_content}]
print(result)
# 实际输出:[{'Parent Name': {'Name': 'value 3'}}]

方案2:保留所有Name值(推荐)

如果需要保留所有Name的对应值,将值存入列表是更稳妥的方式,实现代码:

data_1 = [{'Name': 'value 1'},{'Name': 'value 2'},{'Name': 'value 3'}]

# 提取所有Name对应的值
name_values = [item['Name'] for item in data_1]
# 构造最终嵌套结构
result = [{'Parent Name': {'Names': name_values}}]
print(result)
# 输出:[{'Parent Name': {'Names': ['value 1', 'value 2', 'value 3']}}]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 15:45:32