Python将图形编码为json

2024-04-20 04:21:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试通过遍历包含此数据的图形来创建以下JSON文本:

{
"random" : [
    {
        "attr1" : "X",
        "attr2" : "Y"
    },
    {
        "attr1" : "Z",
        "attr2" : "V"
    }
    ]
}

我试过了:

^{pr2}$

但这会导致“随机”在每个条目之前重复,如下所示:

{"random": [{"attr1": "X", "attr2": "Y"}]}{"random": [{"attr1": "Z", "attr2": "V"}]}

我如何防止“随机:”被重复?如有任何建议,谢谢。在


Tags: 数据文本json图形条目random建议attr1
2条回答

有没有什么原因让你为不同的节点连接字符串,而不是一次转储整个结构?在

>>> import json
>>> graph = {
... "random" : [
...     {
...         "attr1" : "X",
...         "attr2" : "Y"
...     },
...     {
...         "attr1" : "Z",
...         "attr2" : "V"
...     }
...     ]
... }
>>> json.dumps(graph)
'{"random": [{"attr2": "Y", "attr1": "X"}, {"attr2": "V", "attr1": "Z"}]}'

首先,它更简单、更快。其次,你的连接甚至不能产生有效的JSON。在

我不知道你为什么要循环,但你可以简单地编码图形对象。在

import json
graph = { "random": [ { "attr1": "X", "attr2": "Y"}, {"attr1": "Z", "attr2": "V"}]}
output = json.JSONEncoder().encode(graph)
print output
# yields '{"random": [{"attr2": "Y", "attr1": "X"}, {"attr2": "V", "attr1": "Z"}]}'

相关问题 更多 >