Загружаем изображение…

Как создать объект из словаря с доступом через точку — без классов и dataclass?



Когда работаешь с JSON, конфигами или API, постоянный доступ через dict["key"] засоряет код и ухудшает читаемость:
data = {"host": "localhost", "port": 5432}
data["host"]


SimpleNamespace даёт тот же результат, но с доступом через точку:
cfg = SimpleNamespace(**data)
print(cfg.host)


При этом объект остаётся динамическим, можно добавлять поля:
cfg.debug = True

Но ключи должны быть валидными именами атрибутов, работает только для плоских словарей (вложенные не конвертируются).

Удобно для прототипирования, тестов и простых данных.

Python Ready | #совет
Просмотры: 170
Открыть в MAX Сообщить о неточности

Репосты публикации

Публикация канала

Сообщить о неточности

Опишите, что нужно исправить. Если есть источник, добавьте ссылку.

Вы покидаете datool.ru

Ссылка ведёт на внешний сайт. datool.ru не отвечает за его содержимое — проверьте адрес, прежде чем вводить пароли или платёжные данные.

Переход через 10 с

Перейти