如何将字典列表转换为嵌套结构的目标JSON格式列表
将字典列表转换为嵌套结构的字典列表
现有代码及输出
现有实现代码:
i=1 ins = {} meta = {} dlist = [] # JSON data: for i in range(0,4): ins['name'] = f"M {i}" dlist.append(ins.copy()) print(dlist)
运行后输出:
[ {'name': 'M 0'}, {'name': 'M 1'}, {'name': 'M 2'}, {'name': 'M 3'} ]
目标输出格式
想要生成的嵌套结构JSON:
[ { "id": "", "meta": { "name": "milady ordinal #0" } }, { "id": "", "meta": { "name": "milady ordinal #1" } }, { "id": "", "meta": { "name": "milady ordinal #2" } }, { "id": "", "meta": { "name": "milady ordinal #3" } } ]
修改后的实现代码
直接调整循环内的字典结构,生成包含id和嵌套meta的字典即可:
dlist = [] for i in range(0, 4): # 每次循环创建一个完整的嵌套结构字典 item = { "id": "", "meta": { "name": f"milady ordinal #{i}" } } dlist.append(item) # 如果需要格式化输出成标准JSON格式,可使用json模块 import json print(json.dumps(dlist, indent=2))
说明
- 每次循环都新建一个
item字典,确保每个元素都是独立的对象,避免引用复用问题 - 直接构造嵌套结构:外层字典包含
id字段和meta子字典,meta里存放name字段 - 使用
json.dumps()并设置indent=2可以输出格式化后的JSON字符串,和目标格式完全一致
内容的提问来源于stack exchange,提问作者intermarketics
相关产品推荐
相关产品推荐

