Курс Python → Удаление ссылок в Python

В Python оператор del используется для удаления ссылки на объект, что может привести к освобождению памяти, если на объект больше нет ссылок. Однако, в некоторых случаях операция del может казаться упрямой, особенно при работе в интерактивном режиме.

Например, если создать объект в интерактивном интерпретаторе и попытаться удалить его с помощью del, но предыдущий оператор создаст другую ссылку на этот объект, то операция del не выполнится. Это происходит потому, что объект не будет удален до тех пор, пока на него есть хотя бы одна ссылка.

Для примера, предположим, что у нас есть объект y и мы хотим его удалить с помощью del y. Однако, если предыдущий оператор создает новую ссылку на объект, например, через магическую переменную _, то операция del y не выполнится до тех пор, пока на объект есть хотя бы одна ссылка.


>>> y = "Hello"
>>> _
'Hello'
>>> del y

Чтобы действительно удалить объект, необходимо убедиться, что на него больше нет ссылок. Например, вызов функции globals() может привести к изменению ссылок и, в результате, к удалению объекта. Только после того, как количество ссылок на объект достигнет нуля, операция del будет выполнена и объект будет удален из памяти.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Транспонирование 2D-массива с помощью zip
  2. Обезопасьте ввод данных
  3. Создание новых списков через list comprehensions
  4. Условные выражения в Python
  5. Метод join() для объединения элементов в строку.
  6. Метод ne для сравнения объектов
  7. Создание вложенных циклов for
  8. Тайное преобразование типа ключа
  9. Работа с каталогами в Python
  10. Кортеж в Python: создание, доступ, изменение
  11. Тест скорости набора текста на Python
  12. Подсчет частотности элементов в Python
  13. Прокачанный трейсинг ошибок
  14. Хеширование паролей с использованием salt
  15. Метод setitem в Python
  16. Установка и использование emoji
  17. Чтение бинарного файла в Python.
  18. Константы в модуле cmath
  19. Enum в Python
  20. Методы Python для работы с данными
  21. Назначение максимального и минимального значения переменной в Python.
  22. Визуализация пропусков данных
  23. Очистка входных данных
  24. Объявление переменных в Python
  25. Добавление элемента к кортежу
  26. Итерация по копии коллекции
  27. Python: динамическая типизация и проверка типов
  28. Операторы объединения в Python 3.9
  29. Принципы программирования
  30. Метод rlshift для битового сдвига
  31. Создание матрицы в Python
  32. Генерация UUID в Python
  33. Замена переменных в Python
  34. Функции min(), max(), sum()
  35. Установка и использование модуля «howdoi»
  36. Работа с файлами в Python
  37. Преобразование Excel в PDF с Spire.XLS
  38. Colorama: окрашивание текста в Python
  39. Метод rsub для пользовательских чисел
  40. Python Calendar Usage
  41. Цикл for в Python
  42. Функции высшего порядка в Python
  43. Создание функций высшего порядка
  44. Переопределение метода __rshift__
  45. Функция zip() в Python
  46. Использование *args

Marketello читают маркетологи из крутых компаний