我有一个defaultdict(list)
我用过simplejson.dumps(my_defaultdict)
为了输出defaultdict
转换为 JSON 格式。我正在使用树形图的 HTML 代码http://bl.ocks.org/mbostock/4063570 http://bl.ocks.org/mbostock/4063570但我正在努力让我的defaultdict
信息转换为作者正在使用的 JSON 文件的格式。该 JSON 文件名为:/mbostock/raw/4063550/flare.JSON
可以在此链接中找到:http://bl.ocks.org/mbostock/raw/4063550/flare.json http://bl.ocks.org/mbostock/raw/4063550/flare.json.
这是我的默认字典数据:
my_defaultdict = {5: ['child10'], 45: ['child92', 'child45'], 33:['child38']}
json_data = simplejson.dumps(my_defaultdict)
所以我当前的 json_data 看起来像这样:
{
"5": [
"child10"
],
"45": [
"child92",
"child45"
],
"33": [
"child38"
]
}
因此,根据我的理解,数字将是相应的“名称”:“5”,然后我的 JSON 格式文件也将孩子作为“孩子”。就目前情况而言,我的 JSON 格式输出无法在树状图的 HTML 代码中运行。
预期的结果是这样的:
{
"name": "flare",
"children": [
{
"name": "5",
"children": [
{
"name": "child10", "size": 5000},
]
{
"name": "45",
"children": [
{"name": "child92", "size": 3501},
{"name": "child45", "size": 3567},
]
},
{
"name": "33",
"children": [
{"name": "child38", "size": 8044}
]
}
}
Edit:
@martineau 的答案有效,但这并不完全是我想要的。我从一个defaultdict(list)
和所需的输出,如上所述,应该将“孩子”作为列表dict
而马蒂诺友善的回答是,“孩子”只是一个列表。如果有人可以添加一些东西以使其发挥作用,那就太好了。不用担心“size”变量,现在可以忽略它。