Как работает память процесса

Python Senior Без компании
Как работает память процесса
Ответы
В Python память процесса управляется интерпретатором и делится на несколько областей: - **Стек (Stack)** — хранит локальные переменные и вызовы функций (LIFO). - **Куча (Heap)** — динамическая память для объектов (управляется сборщиком мусора). - **Сегмент данных** — глобальные и статические переменные. **Пример:** ``` def func(): x = 10 # Локальная переменная (стек) y = [1, 2, 3] # Объект в куче func() # После вызова 'x' удаляется, 'y' может остаться, если есть ссылки ``` **Особенности:** - **Сборка мусора (GC)** автоматически освобождает неиспользуемые объекты из кучи. - **Неизменяемые типы** (int, str, tuple) кэшируются и переиспользуются. - **Изменяемые объекты** (list, dict) создаются в куче. Для управления памятью можно использовать `sys.getsizeof()` или `gc` модуль.