Урок 18. Знакомство со списками

📁 Блок: Python Fundamentals / Коллекции ⏱️ Время изучения: ~90 мин 🎯 Сложность: Начальная
#list #range #in #not #len #for #print #enumerate #is #from #and #import #append #if #sum #int #input #else #break #add #or #remove #match #str

⚡ Кратко: суть темы

Список в Python — это упорядоченная изменяемая коллекция, которая может хранить элементы любых типов. В отличие от строк, элементы списка можно менять по индексу и по срезу. Списки поддерживают конкатенацию +, повторение *, проверку вхождения in и получение длины len().

  • Создавайте списки через [] или list(); пустой список — [] или list().
  • Индексация начинается с 0; последний элемент — -1.
  • Срезы [start:stop:step] позволяют получить копию части списка или перевернуть его.
  • Изменяйте элементы через my_list[i] = value и подсписки через my_list[a:b] = [...].
  • Перебирайте список циклом for item in my_list: или по индексам через range(len(my_list)).

Что запомнить: списки изменяемы, поэтому их удобно использовать как контейнер для накопления результатов. В современном коде для создания списка из другой последовательности чаще используют list comprehensions, но базовые циклы важны для понимания.

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

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

Этот урок вводит первый тип коллекций в Python — список (list). Исходником служит занятие «Знакомство с коллекциями: списки». Мы сохраняем авторскую логику и примеры, но дополняем материал современными практиками: list comprehensions, генераторные выражения, enumerate(), sum() и guard clauses.

Все дополнения, выходящие за рамки исходного занятия, отмечены блоком Проверить по документации. Основной материал ориентирован на начинающих и полностью совместим с Python 3.8+.

🎯 Цели урока

  • Понять, чем список отличается от строки и других базовых типов.
  • Научиться создавать списки, обращаться к элементам по индексу и срезам.
  • Освоить изменение списка по индексу и по срезу.
  • Использовать операции +, *, in, len() и сравнение списков.
  • Перебирать списки циклом for и строить вложенные циклы.
  • Увидеть Pythonic-способы решения типовых задач со списками.

📚 Что повторить перед изучением

  • ← Урок 17: Практикум 4
  • Строки: индексация, срезы, оператор in, функция len().
  • Цикл for, функция range(), вложенные циклы.
  • Ввод и вывод: input(), print(), f-strings.

🎯 Что изучать дальше