Список — рюкзак для многих предметов

Знакомимся со списком — рюкзаком героя, куда можно сложить много предметов сразу.

Список — это переменная, которая хранит сразу много значений по порядку, как рюкзак с предметами.

Одна коробочка — много вещей

Переменная-коробочка хранит одно значение: одно число или одно имя. Но что, если нужно хранить много вещей сразу? Список покупок, имена всех игроков, предметы в рюкзаке героя? Заводить сто коробочек неудобно. Поэтому придумали список — одну коробочку, в которую помещается много значений по порядку.

Представь рюкзак героя в игре: там меч, щит, зелье. Это и есть список — рюкзак, куда сложены предметы. В Python список записывают в квадратных скобках, а предметы разделяют запятыми:

backpack = ["меч", "щит", "зелье"]
print("В рюкзаке:", backpack)
print("Первый предмет:", backpack[0])
print("Всего предметов:", len(backpack))

Вывод:

В рюкзаке: ['меч', 'щит', 'зелье']
Первый предмет: меч
Всего предметов: 3

Разберём новые штучки:

  • ["меч", "щит", "зелье"] — список из трёх предметов в квадратных скобках.
  • backpack[0] — это «достань предмет номер 0». Важно: счёт в списках начинается с нуля, а не с единицы! Поэтому первый предмет — это номер 0, второй — номер 1, и так далее.
  • len(backpack) — команда len считает, сколько предметов в списке (по-английски length — «длина»). У нас три.

Почему счёт с нуля?

Это сначала непривычно, но к этому быстро привыкаешь. Просто запомни: первый предмет — номер 0. Если в рюкзаке три предмета, их номера — 0, 1 и 2. Номер называют индексом. Хочешь меч (он первый)? Бери backpack[0]. Хочешь зелье (третье)? Бери backpack[2].

Добавить предмет в рюкзак

Герой нашёл новый предмет — добавим его в список командой append (по-английски «добавить в конец»):

backpack = ["меч", "щит"]
backpack.append("карта")
print(backpack)

Вывод:

['меч', 'щит', 'карта']

Карта добавилась в конец рюкзака. Так в играх герой подбирает новые вещи: нашёл — положил в список.

Списки в Scratch

В Scratch списки тоже есть — они так и называются «Списки» и живут среди блоков переменных. Там можно «добавить вещь в список», «удалить из списка», узнать «длину списка». Идея ровно такая же, как в Python: одна коробочка для многих значений.

Попробуй сам

Собери список любимых мультиков и узнай, сколько их. Запусти, потом добавь свой мультик через append.

multiki = ["Простоквашино", "Ну, погоди!"]
multiki.append("Смешарики")
print("Мои мультики:", multiki)
print("Всего:", len(multiki))

Вывод:

Мои мультики: ['Простоквашино', 'Ну, погоди!', 'Смешарики']
Всего: 3

Частые ошибки

  • Считать с единицы. Первый предмет — это [0], а не [1]. Это главная привычка, которую надо выработать со списками.
  • Взять номер больше, чем есть предметов. Если в списке 3 предмета (номера 0, 1, 2), то backpack[3] вызовет ошибку — такого номера нет. Самый большой номер всегда на единицу меньше количества.

Что мы узнали

  • Список хранит много значений по порядку, как рюкзак с предметами; пишут в квадратных скобках.
  • Предметы достают по номеру (индексу), и счёт начинается с нуля.
  • len(список) считает количество, append добавляет предмет в конец.
Проверьте себя
1. Что такое список?
AКоробочка для одного числа
BПеременная, которая хранит сразу много значений по порядку
CКоманда печати
DЗнак умножения
2. Какой номер (индекс) у первого предмета списка?
A1
B0
C-1
DЛюбой
3. Что делает backpack.append("карта")?
AУдаляет карту
BДобавляет «карту» в конец списка
CСчитает предметы
DПечатает список

Закрепите практикой

Задачи с автоматической проверкой — решайте прямо здесь, не уходя из учебника.

Поддержать проект