Мой план состоит в том, чтобы «очистить» json ниже (json n.1), чтобы сохранить только значение местоположения, дату и значение PM25 (json n.2). Я хотел бы сделать это с помощью языка Python. Кто-нибудь знает как это сделать ? Большое спасибо за вашу поддержку.
json № 1 (дикт):
'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 № 2 (дикт):
'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.7782350000000005 (с плавающей запятой)
Вывод для данных2: 45.204480000000004 (с плавающей запятой)
Вывод для data3: '2020-12-14T15:00:00+00:00' (строка)
Выход для данных4: 15,0 (с плавающей запятой)
Теперь я пытаюсь объединить данные1, данные2, данные3 и данные4 в файл json.
Просто JSON.loads(), а затем вы можете отфильтровать необходимые компоненты, а затем выполнить JSON.dumps().
Привет @Mike, я обновил свой вопрос.
Спасибо, @Han, я пытаюсь воспользоваться твоим советом.
Мне удалось извлечь нужные мне данные с помощью этого фрагмента кода (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)
Ну что вы пробовали до сих пор? Покажите нам код и опишите проблемы, с которыми вы столкнулись, не требуйте полного решения.