繁体   English   中英

如何使用Python创建嵌套的JSON对象数组?

[英]How to create a nested array of JSON objects using Python?

所需的输出:

{"MainKey": 
   [{"key01":"value01","key02":"value02"},
    {"key11":"value11","key22":"value02"}
   ]
}

我试过的代码:

data = {}
data2=[{}]

data2[0]['key01'] = 'value01'
data2[0]['key02']=  'value02'

data2[1]['key11'] = 'value11'  #index out of bounds error
data2[1]['key12']=  'value12'

data['MainKey']=data2

import json 
with open('try.json", 'w') as outfile:
 json.dump(data,outfile)

但这为data2中第二组值给出了索引超出范围的错误。 我该如何解决?

一种方法是使用range创建字典数量。

例如:

data = {}

data2 = [{} for i in range(2)]

data2[0]['key01'] = 'value01'
data2[0]['key02']=  'value02'

data2[1]['key11'] = 'value11'
data2[1]['key12']=  'value12'

data['MainKey']=data2
print(data)

输出:

{'MainKey': [{'key01': 'value01', 'key02': 'value02'}, {'key12': 'value12', 'key11': 'value11'}]}

data2是仅包含一项的列表,因此其索引不能大于0。

>>> data2=[{}]
>>> data2[0]['key01'] = 'value01'
>>> data2[0]['key02'] = 'value02'
>>> data2

[{'key01':'value01','key02':'value02'}]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM