Alterna · учебный материал

Списки и обработка элементов

38.1: Списки и обработка элементов. Короткая теория, один пример и пошаговая трасса Python.

Что в этом материале

Содержание и основные понятия

Список изменяем и хранит элементы в порядке. Для экзамена часто достаточно одного прохода без сохранения всех данных, но список полезен для сортировки и повторного анализа.
суть и практика
9 класс
ЕГЭ №17
ЕГЭ №26
01
Как это устроено
Список — изменяемая последовательность. Он подходит, когда данные нужно сохранить, менять, сортировать или обходить несколько раз.
Создание.
Литерал [1, 2] создаёт список; list(...) строит список из итерируемого объекта.
Индекс.
Как у строки, но элемент списка можно заменить.
Изменяемость.
append, extend, sort и присваивание по индексу меняют тот же список.
Копия.
a[:] и a.copy() создают новый верхний список; b = a создаёт второе имя того же объекта.
02
Один пример в исполнении
Запусти короткую программу и переходи по строкам. Визуализатор показывает только код, текущую строку, переменные и вывод.
Выбирай обход по значениям, если индекс не нужен:
for value in values
. Если нужна позиция, используй
enumerate
. Не удаляй элементы из списка во время прямого обхода: индексы сдвигаются, и часть данных может быть пропущена. Создай новый отфильтрованный список или обходи копию.
Карта алгоритма
Читай слева направо, затем запускай код.
1
Начало
2
Создать список
3
append добавляет один объект
4
extend добавляет элементы
5
Вывести список
03
Запомнить
append([2, 3]) добавляет один список, extend([2, 3]) — два числа.
Проверь пустой результат перед max, min и pop.
Для независимой копии не используй второе имя b = a.
Синтаксис этой страницы
list(iterable)
Создаёт список из итерируемого объекта.
append(x)
Добавляет один элемент x в конец списка.
extend(iterable)
Добавляет в конец все элементы iterable, а не сам iterable как один элемент.
insert(i, x)
Вставляет x перед позицией i.
pop(i=-1)
Удаляет и возвращает элемент; пустой список вызывает IndexError.
remove(x)
Удаляет первое равное x; отсутствующее x вызывает ValueError.
index(x)
Возвращает позицию первого x или ValueError, если x отсутствует.
count(x)
Считает равные x элементы.
copy()
Возвращает неглубокую копию списка; вложенные списки при этом остаются общими объектами.
enumerate(values)
Даёт индекс и значение.
[expr for x in values if cond]
Списковое включение строит новый список.
len / sum
Длина и сумма чисел списка.
map / split / int
Читают числа из одной входной строки.

Структурная карта учебников