Войти Создать аккаунт

Вложенные структуры · 15 из 16

Найти значение в глубине

Задействованы также: Рекурсия

Выгрузка из электронного журнала приходит вложенной как попало: словари внутри списков внутри словарей. Нужно достать все значения по одному ключу, где бы он ни лежал.

Что сделать

Достаньте из выгрузки журнала все значения по одному ключу — где бы он ни лежал.

Что приходит

  • dannye — словари и списки, вложенные как попало

  • klyuch — какой ключ искать

Что вернуть

Список всех значений под klyuch на любой глубине, в порядке обхода; значение-словарь попадает целиком, и внутри него поиск идёт дальше.

Допишите функцию sobrat_znacheniya в редакторе справа. Результат верните через return — то, что напечатано, на проверку не влияет.

Пример

В {"класс": "9А", "ученики": [{"имя": "Иванов"}, {"имя": "Петров"}]} ключ «имя» лежит внутри списка учеников, дважды. Ответ — ["Иванов", "Петров"].

Тот же пример кодом
Вызов
sobrat_znacheniya({'класс': '9А', 'ученики': [{'имя': 'Иванов'}, {'имя': 'Петров'}]}, 'имя')
Вернуть
['Иванов', 'Петров']
Ctrl+Enter — проверить

Обсуждение

Вопросов пока нет.

Войдите, чтобы спросить.