检查json结构

2024-09-27 00:14:43 发布

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

我正试图打印出一些json的映射,这样我就可以快速理解它的结构。我有一个函数,可以递归地循环嵌套的json并打印项的所有键。然而,它的功能并不像我预期的那样example json

def inspect_json(level,nested_json):
    for key in nested_json.keys():
        print "{}.{}".format(level,key)
        if isinstance(nested_json[key],dict):
            level += 1
            inspect_json(level,nested_json[key])

>>> inspect_json(1,data)
1.@xmlns:aws
1.aws:OperationRequest
2.aws:RequestId
2.aws:UrlInfoResult
3.aws:Alexa
4.aws:ContentData
5.aws:DataUrl
6.@type
etc...

我希望输出像这样:

>>> inspect_json(1,data)
aws:OperationRequest
  -aws:RequestId
aws:UrlInfoResult
  -aws:Alexa
    --aws:ContentData
    --aws:Related
    --aws:TrafficData
  -aws:ResponseStatus
    --@xmlns:aws
    --aws:StatusCode

Tags: keyawsjsondata结构levelalexanested
1条回答
网友
1楼 · 发布于 2024-09-27 00:14:43

我想你想要这样的东西:

def inspect_json(level,nested_json):
    for key in nested_json.keys():
        print "{}.{}".format((level-1)*'  ',key)  # identation 2 blancs
        if isinstance(nested_json[key],dict):
            inspect_json(level+1,nested_json[key])  # increment level

相关问题 更多 >

    热门问题