Урок 28. Списки. Работа с памятью

📁 Блок: Python Fundamentals / Коллекции и память⏱️ Время изучения: ~100 мин🎯 Сложность: Начальная — средняя
#id #print #del #copy #list #enumerate #for #in #append #import #sum #len #if #range #lower #split

⚡ Кратко: что важно

Список в Python является изменяемым объектом: методы и присваивание по индексу меняют тот же объект в памяти.

Переменная хранит ссылку на объект, поэтому присваивание list_b = list_a не создаёт копию списка.

id() помогает увидеть, что две переменные указывают на один объект.

Вложенные списки требуют нескольких уровней индексации: matrix[0][1].

del удаляет имя, элемент или срез, но не возвращает удалённое значение.

copy(), срез [:] и list() создают поверхностную копию: вложенные списки остаются общими.

copy.deepcopy() создаёт независимую копию всех вложенных уровней.

Топ-3 ошибки: путать ссылку и копию; ожидать порядок там, где его нет; усложнять выражение, когда обычный цикл читается лучше.

О чём этот урок

Источник урока: Python 28: Списки. Работа с памятью. Материал сохранён по темам источника, но пояснения и примеры структурированы как интерактивный справочник.

Цели

  • Понять, чем ссылка отличается от независимой копии объекта.
  • Разобрать поведение изменяемых и неизменяемых объектов при присваивании.
  • Научиться читать и изменять вложенные списки.
  • Использовать del для удаления элементов, срезов и имён.
  • Отличать поверхностное копирование от глубокого.

Что повторить заранее

  • Урок 18 — списки
  • Урок 24 — кортежи
  • Урок 26 — методы списков
  • Урок 27 — summary по коллекциям

Разделы урока

Что дальше

Следующая forward-ссылка появится только после генерации следующей папки урока, чтобы не вести на несуществующую страницу.