在我的工作中,我被困在使用这个API,并且由于它的复杂性,在数据集中进行解析遇到了困难。
在下面的JSON中,对我来说唯一重要的值是" name“和实际的主机名。我正在尝试制作一个由{"name":"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"
},
}发布于 2016-01-23 01:18:24
也许你这次喜欢答案。
(将dict/json分配给一个名为test的变量)
your_dict = {i['name']: ", ".join([host['host'] for host in i['env1'][0]['sins']]) \
for i in test["hugeData"]}https://stackoverflow.com/questions/34958340
复制相似问题