如何使用python剪切json

2024-05-19 02:50:03 发布

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

我的计划是“清理”下面的json(json n.1),以便只保留位置值、日期和PM25值(json n.2)。我想用Python语言来实现这一点。有人知道怎么做吗?非常感谢你的支持

json n.1(dict):

 'level': 'hyper-local',
 'date': '2020-12-14T15:00:00+00:00',
 'pollutants': {'NO2': {'description': 'Nitrogen dioxide',
   'concentration': {'mugm3': {'value': 22}},
   'aqi': {'elichens': {'value': 11.0,
     'category': 'Very Low Pollution',
     'color': '#6cef00'}}},
  'O3': {'description': 'Ozone',
   'concentration': {'mugm3': {'value': 27}},
   'aqi': {'elichens': {'value': 11.0,
     'category': 'Very Low Pollution',
     'color': '#6cef00'}}},
  'PM25': {'description': 'Fine particulate matter (< 2.5 µm)',
   'concentration': {'mugm3': {'value': 9}},
   'aqi': {'elichens': {'value': 15.0,
     'category': 'Very Low Pollution',
     'color': '#93f400'}}},
  'PM10': {'description': 'Fine particulate matter (< 10 µm)',
   'concentration': {'mugm3': {'value': 15}},
   'aqi': {'elichens': {'value': 15.0,
     'category': 'Very Low Pollution',
     'color': '#93f400'}}}},
 'global_aqi': {'elichens': {'value': 15.0,
   'dominant': 'PM25',
   'info': 'eLichens Air Quality Index (eAQI)',
   'category': 'Very Low Pollution',
   'color': '#93f400'}}}

我的目标是得到这样的东西:

json n.2(dict):

 'pollutants': {'PM25': {'concentration': {'mugm3': {'value': 9}}}}}}

我设法提取了我需要的信息,如下所示:

pprint(data)
data1=data['location']['latitude']
data2=data['location']['longitude']
data2=data['date']
data3=data['pollutants']['PM25']['aqi']

数据1的输出:5.778235000000005(浮动)
数据2的输出:45.20448000000004(浮点)
数据3的输出:“2020-12-14T15:00:00+00:00”(字符串)
数据4的输出:15.0(浮动)

现在,我正在尝试将data1、data2、data3和data4合并到一个json文件中


Tags: 数据jsondatavaluedescriptionverycolorlow
1条回答
网友
1楼 · 发布于 2024-05-19 02:50:03

我设法用这段代码提取了所需的数据(d是我的json n.1,它是一个dict)。我想这不是一个完美的解决方案,但它是有效的:)

location,date,pm=d['location'],d['date'],d['pollutants']['PM25']['aqi']['elichens']['value']
dict1={'location':location}
dict2={'date':date}
dict3={'PM25':pm}
dict1.update(dict2)
dict1.update(dict3)
print(dict1)

相关问题 更多 >

    热门问题