Встречается на собеседованиях • сегодня

В каком порядке удаляются объекты в Python

В Python используется механизм подсчёта ссылок и сборщик мусора (GC) для циклических ссылок. Порядок удаления:

  1. Основной механизм - подсчёт ссылок. Объект удаляется сразу, когда счётчик ссылок достигает нуля.
  2. Для циклических ссылок работает сборщик мусора (generation GC):
    • Объекты группируются по поколениям (0, 1, 2)
    • Чаще проверяются молодые объекты (gen 0)
    • При достижении пороговых значений срабатывает сборка мусора

Пример:

python
class Node:
    def __init__(self, value):
        self.value = value
        self.next = None

# Создаём циклическую ссылку
a = Node(1)
b = Node(2)
a.next = b
b.next = a

# Удаляем ссылки
a = None
b = None
# Теперь GC обнаружит циклическую ссылку и удалит объекты
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы