在Python中从Dict转换为JSON

时间:2014-07-04 11:38:20

标签: python json

我想在Python中构造一个dict,json.dumps(arg)将转换为以下JSON结构:

"{\"type\":\"id\",
\"entries:\":
[[\"a\",91],
[\"b\",65],
[\"c\",26],
[\"d\",25]]}"

这是我到目前为止所做的:

json_dict = {'type': str("id"),
            'entries': [['a': "91"], #Error line
                        ['b': "65"],
                        ['c': "26"],
                        ['d': "25"]]}

我得到"语法无效"用#Error行标记的行上的错误。如何在dict中表示此层次结构,并仍然能够将其转换为所需的JSON结构?

1 个答案:

答案 0 :(得分:5)

Python列表使用逗号,而不是冒号:

json_dict = {'type': str("id"),
            'entries': [['a', "91"],  # note the comma after 'a', not a colon
                        ['b', "65"],
                        ['c', "26"],
                        ['d', "25"]]}

使用逗号,这是现在有效的Python语法,生成可以序列化为JSON的数据结构:

>>> json_dict = {'type': str("id"),
...             'entries': [['a', "91"],
...                         ['b', "65"],
...                         ['c', "26"],
...                         ['d', "25"]]}
>>> import json
>>> json.dumps(json_dict)
'{"type": "id", "entries": [["a", "91"], ["b", "65"], ["c", "26"], ["d", "25"]]}'