我试图了解如何获取列表并将其转换为嵌套的JSON对象。
预期输出
{
"Name1": [
{
"key": "value",
"key": "value",
"key": "value",
"key": "value"
}
],
}
到目前为止,我的想法如下:使用理解和拆分键值对将列表转换为字典。
list1 = ['key value', 'key value', 'key value']
dict1 = dict(item.split(" ") for item in list1)
然后我想将其转换为JSON对象将类似于:
print json.loads(dict1)
然而,我不知道如何创建" Name1"父键。似乎谷歌特别有帮助。我确定有一些简单的东西丢失,任何指针都会被贬低。
修改
列入供参考的清单
答案 0 :(得分:1)
您只需将它们放入另一个词典,然后使用新列表。所以:
import json
list1 = ['key1 value1', 'key2 value2', 'key3 value3']
dict1 = {'Name1': [dict(item.split(" ",1) for item in list1)] }
# ^ dict ^ list with 1 element end list ^ ^ end dict
json.dumps(dict1)
这会产生:
>>> print(json.dumps(dict1))
{"Name1": [{"key2": "value2", "key3": "value3", "key1": "value1"}]}
备注强>:
- 字典只能包含不同的密钥(包括JSON和Python);
- 您最好使用
.split(" ",1)
进行拆分,因为如果值包含空格,则这些都被视为单个值。- 字典是无序的,因此可以改组键的顺序。
醇>