Задать вопрос
@artinnok
бекенд-программист

Как достать данные из такого словаря?

Есть словарь:
data ={'a': {'b': {'c': 1}}}
Надо достать значение ключа 'c' с помощью такой конструкции data[key], при этом такой вариант не подходит data['a']['b']['c']. Как это сделать?
  • Вопрос задан
  • 339 просмотров
Подписаться 3 Оценить 4 комментария
Помогут разобраться в теме Все курсы
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillfactory
    Профессия Python-разработчик
    9 месяцев
    Далее
  • SF Education
    Бэкенд-разработчик на Python
    3 месяца
    Далее
Решения вопроса 1
angru
@angru
Python 3. но это костыль конечно же.

from functools import reduce


class CustomDict(dict):
    def __getitem__(self, key):
        return reduce(lambda acc, x: acc.__getitem__(x), key.split('.'), super())


data = CustomDict({'a': {'b': {'c': 1}}})

print(data['a.b.c'])
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
AnnTHony
@AnnTHony
Интроверт
Смысл тот же, что и
data['a']['b']['c']

((data.get('a')).get('b')).get('c')
Ответ написан
Комментировать
@lyeskin
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы