Загружаем изображение…
Python умеет делать словарь неизменяемым без копирования данных!

Обычно для защиты конфигов и общего состояния делают копию словаря, что создаёт лишние аллокации памяти.
safe = dict(config)

MappingProxyType создаёт read-only proxy поверх словаря — запись через него становится невозможной, но данные не копируются.
readonly["debug"] = True # TypeError

При этом proxy остаётся живым: если исходный словарь изменится, изменения автоматически отразятся и в read-only view.
config["debug"] = True

Это особенно полезно для конфигов, внутренних API, общего состояния и защиты данных внутри библиотек.
def get_settings():
return MappingProxyType(settings)


MappingProxyType позволяет отдавать наружу read-only view словаря без копирования и без риска мутации через возвращённый объект.

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

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

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

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

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

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

Перейти