如何将多个字典追加到一个列表中的字典里?
我有以下的Python代码:
data = []
data2 = [1,2,3]
for x in data2:
row = {
'data': []
}
row['data'].append({'record': x})
data.append(row)
print(data)
我想要得到这样的输出:
[
{
"data": [
{
"Record": 1
},
{
"Record": 2
},
{
"Record": 3
}
]
}
]
但是使用append()方法不行,我该怎么办呢?
1 个回答
1
row
必须放在循环外面,否则它会重复执行很多次。
data = []
data2 = [1,2,3]
# Moved out of the loop
row = {
'data': []
}
for x in data2:
row['data'].append({'record': x})
# Moved out of the loop
data.append(row)
如果想要得到格式化的输出:
import json
print(json.dumps(data, indent=4))