将JSON转储到fi时跳过第一个键

2024-06-17 11:37:27 发布

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

例如,这是JSON文件

{
    "0": {
        "xxx": "123",
        "aaa": "456"
    },
    "1": {
        "xxx": "123",
        "aaa": "456"
    },
    "2": {
        "xxx": "123",
        "aaa": "56775"
    }.....

}

我需要跳过第一个键,这样做:

{
    "xxx": "123",
    "aaa": "456"
}
{
    "xxx": "123",
    "aaa": "456"
}
{
    "xxx": "123",
    "aaa": "56775"
}.....

我的假设是应该是这样的:

for p in responseMain:
            skipPLU = responseMain[p]
            ......

我就是这样写文件的:

with open('TEST.json', "w+") as op:
        json.dump(responseMain,op)

Tags: 文件intestjsonforaswithopen
2条回答

如果您真的希望每个对象在文件中是一个单独的JSON,而不是JSON数组的一部分,那么需要分别编写它们。你知道吗

import json
with open('TEST.json', "w+") as op:
    for item in responseMain.values():
        json.dump(item, op)

您可以使用:

responseMain.values()

要获取dict值列表-不带键:

dict_values([{'xxx': '123', 'aaa': '456'}, {'xxx': '123', 'aaa': '56775'}, {'xxx': '123', 'aaa': '456'}])

或:

list(responseMain.values())

[{'aaa': '456', 'xxx': '123'},
 {'aaa': '56775', 'xxx': '123'},
 {'aaa': '456', 'xxx': '123'}]

所需的JSON无效,应将其包装到列表中。你知道吗

相关问题 更多 >