Предполагая, что ваши данные имеют вид:
{
"keyword1":{
"infected": False
"result": "Name"
"otherParams": "otherVals"
}
"keyword2": {
...
}
}
Когда вы импортируете данные из json
в python, они преобразуются в словарь.Это означает, что вы можете перемещаться по нему, как по словарю, для извлечения фактически необходимой информации.
Например, если вы хотите создать новый словарь, сопоставляющий параметр result
с параметром infected
длякаждая запись в json
, вы можете сделать это довольно легко, пройдя словарь.Это так же просто, как это:
import json
with open('data.json') as data_file:
data = json.load(data_file)
goal = {}
for key in data.keys():
result = data[key]["result"]
infected = data[key]["infected"]
if result not in goal:
goal[result] = infected
else:
print("Repeated result key of '" + result + "'")
print(goal)
Для файла примера, который вы дали, вы получите:
{'EICAR-AV-Test': True}
, который, как я полагаю, вам нужен.
Этот метод просто просматривает каждую запись в файле json
и создает новую пару key => value
в выходном словаре, сопоставляя параметр result
записи с параметром infected
, а также быстро предупреждает вас о любых ошибках.
Я считаю, что это было вашей целью, но дайте мне знать, если это не полностью отвечает на ваш вопрос.