У меня есть объект json, который я хотел бы отфильтровать для имени ключа с ошибкой. Итак, для примера ниже, я хотел бы иметь json-объект без ключа с ошибкой с тестовым именем. Каков самый простой способ сделать это?python - Фильтр JSON для нового объекта JSON
json_data = """{
"my_test": [{
"group_name": "group-A",
"results": [{
"test_name": "test1",
"time": "8.556",
"status": "pass"
}, {
"test_name": "test2",
"time": "45.909",
"status": "pass"
}, {
"test_nameZASSD": "test3",
"time": "9.383",
"status": "fail"
}]
}]
}"""
Это онлайн-тест, и похоже, что мне не разрешено использовать jsonSchema.
Пока мой код выглядит следующим образом:
if 'test_suites' in data:
for suites in data["test_suites"]:
if 'results' in suites and 'suite_name' in suites:
for result in suites["results"]:
if 'test_name' not in result or 'time' not in result or 'status' not in result:
result.clear()
else:
....
else:
print("Check 'suite_name' and/or 'results'")
else:
print("Check 'test_suites'")
Это вид работ, но result.clear() оставляет пустой {}, который раздражать позже. Что я могу сделать здесь?
Я рассмотрю это. Прямо сейчас я проверяю json, и если я нахожу что-то не так, я делаю results.clear(). (только для этого последнего набора) Но все же оставляет {} скобки. Как я могу это решить? – tsf144
@ tsf144 Я добавил способ, как вы могли это сделать. – Jonathan
Я добавил свой код до сих пор. Это отчасти становится беспорядочным, но мне не разрешено использовать jsonSchema. – tsf144