367

私はこのような辞書を持っています:

sample = {'ObjectInterpolator': 1629,  'PointInterpolator': 1675, 'RectangleInterpolator': 2042}

以下に示すように、辞書を JSON ファイルにダンプする方法がわかりません。

{      
    "name": "interpolator",
    "children": [
      {"name": "ObjectInterpolator", "size": 1629},
      {"name": "PointInterpolator", "size": 1675},
      {"name": "RectangleInterpolator", "size": 2042}
     ]
}

これを行うためのpythonicの方法はありますか?

ツリーマップを生成したいと思うかもしれませんd3

4

7 に答える 7

25
d = {"name":"interpolator",
     "children":[{'name':key,"size":value} for key,value in sample.items()]}
json_string = json.dumps(d)

もちろん、順序が正確に保持される可能性は低いです...しかし、それは辞書の性質です...

于 2013-06-11T12:18:05.530 に答える
18

これで始められるはずです

>>> import json
>>> print json.dumps([{'name': k, 'size': v} for k,v in sample.items()], indent=4)
[
    {
        "name": "PointInterpolator",
        "size": 1675
    },
    {
        "name": "ObjectInterpolator",
        "size": 1629
    },
    {
        "name": "RectangleInterpolator",
        "size": 2042
    }
]
于 2013-06-11T12:17:45.930 に答える