Перейти к содержимому
Задача · Модули, файлы и генераторы · урок 12 из 12

Задача: настройки из JSON

Напишите функцию load_settings(text). Она разбирает строку text с объектом JSON и возвращает новый словарь: настройки из DEFAULTS, поверх которых записаны значения из text. Словарь DEFAULTS уже есть в заготовке.

  • load_settings('{"theme": "dark"}') → {'theme': 'dark', 'font_size': 14, 'autosave': True}
  • load_settings('{"lang": "ru"}') → {'theme': 'light', 'font_size': 14, 'autosave': True, 'lang': 'ru'}
  • load_settings("{theme: dark}") вызывает ValueError

Ограничения: text — либо объект JSON, либо строка, которая не является верным JSON; на неверном JSON функция вызывает ValueError. Ключи, которых нет в DEFAULTS, попадают в результат. Сам DEFAULTS не меняется между вызовами.

Не добавляйте лишних импортов, если в задаче это прямо не сказано.

load_settings.py — python
python · строк: 8
Ctrl+Enter запуск · Esc выйти из редактора

Подпишись, чтобы пройти курс

Курс бесплатный. Войди через Telegram и подпишись на канал — откроются все уроки.

Войти другим способом