TGViewer
Just Python Just Python @justpython_it · 9.83K subscribers
Post #5847 254
Раздувающийся экземпляр dict (ч.1)

Как мы видим, при каждом новом выводе словари становятся раздутыми. Почему это происходит?

CPython способен повторно использовать один и тот же объект "keys" в нескольких словарях. Это было добавлено в PEP 412 с целью уменьшить использование памяти, особенно в словарях экземпляров, где ключи (атрибуты экземпляра), как правило, являются общими для всех экземпляров.

Эта оптимизация полностью выполняется, например, для словарей, но она отключается, если нарушаются определенные допущения.

#theory // Just Python & Max
More from @justpython_it
  1. Sep 22, 2026Декорируем функции Декоратор – это обертка вокруг функции, которая определенным образом из…
  2. Sep 22, 2026Проверка необходимой версии Python Чтобы ваши пользователи не могли запустить скрипт в нес…
  3. Sep 21, 2026Использование подчеркивания в REPL Вы можете получить результат последнего выражения в Pyt…
  4. Sep 21, 2026Обязательные аргументы Для принудительного использования аргументов ставьте символ звездоч…
  5. Sep 20, 2026Замена переменных на месте Этот аккуратный трюк поможет сэкономить несколько строк кода. #…
  6. Sep 20, 2026List Comprehensions List comprehension может заменить неэстетичные циклы, используемые для…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →