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

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

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

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


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

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

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

Автор урока

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

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

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

  1. Философия Python
  2. Автоматизация действий с Pyautogui
  3. Удаление URL-адресов в Python
  4. Объединение словарей в Python 3.5+
  5. Метод radd для пользовательских чисел
  6. Открытие и редактирование скриптов Python
  7. Установка и использование pyshorteners
  8. Методы Python для работы с данными
  9. Howdoi — получение ответов из терминала
  10. Python Менеджер контекста
  11. Многострочные комментарии в Python
  12. Выход из профиля в Django
  13. Дефолтные параметры в Python
  14. Явный импорт в Python
  15. Многострочные комментарии в Python
  16. Преобразование букв в нижний регистр
  17. Группы исключений в Python
  18. Вычисление натурального логарифма в NumPy
  19. Удаление первого элемента списка
  20. Numpy: разбиение массивов
  21. Применение промокода в Много лосося
  22. Работа с файлами в Python
  23. Операторы += в Python
  24. Группы исключений в Python
  25. Оператор is в Python
  26. Функция __init__ в Python
  27. Функция all() в Python
  28. Сортировка и разворот списка
  29. Основные операции с библиотекой Numpy
  30. Работа с датой и временем в Python
  31. Оптимизация строк в Python
  32. Поиск элементов BeautifulSoup
  33. Преобразование строк в числа в Python
  34. Символ подчеркивания в Python
  35. Библиотека schedule: планировщик задач
  36. Поиск кода
  37. Введение в Python
  38. Форматирование даты с strftime()
  39. GitHub в Telegram: подписка на уведомления
  40. Транспонирование матрицы
  41. Безопасный доступ к значениям словаря
  42. Метод pop() списка
  43. Импорт модулей в Python 3.12

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