Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何通过嵌套JSON的嵌套进行解析?_Python_Json_Dictionary - Fatal编程技术网

Python 如何通过嵌套JSON的嵌套进行解析?

Python 如何通过嵌套JSON的嵌套进行解析?,python,json,dictionary,Python,Json,Dictionary,我在工作中一直在使用这个API,由于数据集的复杂性,在解析数据集时遇到了困难 在下面的JSON中,对我来说唯一重要的值是“name”和实际的主机名。我试图制作一个由{“name”:“host,host,host,host”}组成的字典。如果有人知道如何解析,或者能为我指出正确的方向,那将非常感谢 { "hugeData":[ { "env1":[ { "sins":[ {"host": "ip-

我在工作中一直在使用这个API,由于数据集的复杂性,在解析数据集时遇到了困难

在下面的JSON中,对我来说唯一重要的值是“name”和实际的主机名。我试图制作一个由{“name”:“host,host,host,host”}组成的字典。如果有人知道如何解析,或者能为我指出正确的方向,那将非常感谢

{

    "hugeData":[
    {

        "env1":[
        {

            "sins":[
            {"host": "ip-10-12-138-225.va1.b2c.test.com", "deployTime": "2015-07-23 11:54 AM", "sin": "0"},
            {"host": "ip-10-12-129-193.va1.b2c.test.com", "deployTime": "2015-09-01 01:09 PM", "sin": "7"},
            {"host": "ip-10-12-138-235.va1.b2c.test.com", "deployTime": "2015-07-23 11:54 AM", "sin": "9"},
            {"host": "ip-10-12-138-250.va1.b2c.test.com", "deployTime": "2015-07-23 11:53 AM", "sin": "12"},
            {"host": "ip-10-12-138-223.va1.b2c.test.com", "deployTime": "2015-07-23 11:53 AM", "sin": "14"},
            {"host": "ip-10-12-138-237.va1.b2c.test.com", "deployTime": "2015-07-23 11:54 AM", "sin": "17"},
            {"host": "ip-10-12-138-244.va1.b2c.test.com", "deployTime": "2015-07-23 11:53 AM", "sin": "18"},
            ],

            "status": "success",

            "buildTime": "2015-05-26T17:06:06",

        }
        ],

        "name": "apache-6"
        },

    {
        "env1":[
        {
            "sins":[
            {"host": "ip-10-12-138-225.va1.b2c.test.com", "deployTime": "2015-12-16 05:23 PM", "sin": "0"},
            {"host": "ip-10-12-129-193.va1.b2c.test.com", "deployTime": "2015-12-16 05:23 PM", "sin": "7"},
            {"host": "ip-10-12-138-235.va1.b2c.test.com", "deployTime": "2015-12-16 05:23 PM", "sin": "9"},
            {"host": "ip-10-12-138-250.va1.b2c.test.com", "deployTime": "2015-12-16 05:23 PM", "sin": "12"},
            {"host": "ip-10-12-138-223.va1.b2c.test.com", "deployTime": "2015-12-16 05:23 PM", "sin": "14"},
            {"host": "ip-10-12-138-237.va1.b2c.test.com", "deployTime": "2015-12-16 05:23 PM", "sin": "17"},
            {"host": "ip-10-12-138-244.va1.b2c.test.com", "deployTime": "2015-12-16 05:23 PM", "sin": "18"},
            {"host": "ip-10-12-138-248.va1.b2c.test.com", "deployTime": "2015-12-16 05:23 PM", "sin": "21"},
            ],

            "status": "success",

            "buildTime": "2015-12-16T17:07:44",
        }
        ],

        "name": "apache-5"
        },

    {
        "env1":[
        {
            "sins":[
            {"host": "ip-10-12-138-234.va1.b2c.test.com", "deployTime": "2015-08-06 03:13 PM", "sin": "10"},
            {"host": "ip-10-12-138-246.va1.b2c.test.com", "deployTime": "2015-08-06 03:15 PM", "sin": "20"},
            {"host": "ip-10-12-138-216.va1.b2c.test.com", "deployTime": "2015-08-06 03:04 PM", "sin": "28"}
            ],

            "status": "success",

            "buildTime": "2013-02-21T15:41:59",

        }
        ],

        "name": "app-steel"
        },
}

也许这次你喜欢这个答案

(将dict/json分配给一个名为test的变量)


也许这次你喜欢这个答案

(将dict/json分配给一个名为test的变量)


试着找出为什么这个问题让我想起这个试着找出为什么这个问题让我想起这个第二行的行距/缩进是什么原因?“for i”行应该有这么大的缩进吗?这都是一个表达式。第一行末尾的“\”告诉解释器表达式将在下一行继续。我这样做只是为了防止SO为这个代码段添加滚动条。缩进仅适用于阅读代码的人。不需要。第二行行距/缩进的原因是什么?“for i”行应该有这么大的缩进吗?这都是一个表达式。第一行末尾的“\”告诉解释器表达式将在下一行继续。我这样做只是为了防止SO为这个代码段添加滚动条。缩进仅适用于阅读代码的人。这是不必要的。
your_dict = {i['name']: ", ".join([host['host'] for host in i['env1'][0]['sins']]) \
              for i in test["hugeData"]}