如何将多个字典合并为列表中的单个字典?Python技术问题
解决方法
你的问题核心有两个:一是每次循环都新建row字典并添加到data,导致最终data包含3个独立字典;二是键名需要从'record'改为'Record'(注意大小写匹配)。
修改后的代码如下:
data = [] data2 = [1,2,3] # 先创建一个带空data列表的字典 row = {'data': []} for x in data2: # 往同一个data列表里追加元素 row['data'].append({'Record': x}) # 最后把这个字典加入data data.append(row) print(data)
如果想要和你示例完全一致的格式化输出,可以借助json模块优化打印效果:
import json data = [] data2 = [1,2,3] row = {'data': []} for x in data2: row['data'].append({'Record': x}) data.append(row) # 格式化打印,缩进4空格 print(json.dumps(data, indent=4))
运行后输出结果:
[ { "data": [ { "Record": 1 }, { "Record": 2 }, { "Record": 3 } ] } ]
内容的提问来源于stack exchange,提问作者x__SHARINGAN____x
相关产品推荐
相关产品推荐

