Встречается на собеседованиях • сегодня
К чему приводят нюансы работы с памятью в Python
В Python управление памятью автоматизировано через механизм подсчёта ссылок и сборщик мусора. Однако есть нюансы:
- Циклические ссылки – объекты ссылаются друг на друга, но недоступны извне. Сборщик мусора (GC) их удаляет, но это требует дополнительных ресурсов.
python
a = []; b = []; a.append(b); b.append(a) # Циклическая ссылка
-
Изменяемые vs неизменяемые объекты – например,
+=для списков модифицирует объект, а для строк создаёт новый. -
Кэширование мелких объектов – целые числа от -5 до 256 и короткие строки кэшируются, что экономит память, но может ввести в заблуждение при сравнении через
is. -
Утечки памяти – например, незакрытые файлы или неучтённые ссылки в глобальных областях видимости.
Для контроля памяти можно использовать gc, sys.getrefcount() или профилировщики (tracemalloc, memory_profiler).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы