Встречается на собеседованиях • сегодня
Как устроена память в Python
В Python управление памятью осуществляется через private heap (кучу), где хранятся все объекты. Менеджер памяти автоматически выделяет и освобождает память с помощью механизма подсчёта ссылок (reference counting) и сборщика мусора (garbage collector).
Ключевые аспекты:
- Reference Counting – каждый объект содержит счётчик ссылок. Когда он достигает нуля, память освобождается.
- Garbage Collector – решает проблему циклических ссылок (когда объекты ссылаются друг на друга, но внешних ссылок нет).
- Memory Pools – Python использует пулы для оптимизации выделения памяти под мелкие объекты (например, int, str).
Пример:
python
import sys
a = [1, 2, 3] # Создаётся объект списка в куче
b = a # Увеличивается счётчик ссылок объекта
print(sys.getrefcount(a)) # Выведет 3 (a, b + временная ссылка в getrefcount)
del b # Счётчик уменьшается
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы