Дрон Кодер — программирование для детей и взрослых в игровой форме. Начать бесплатно

Индексы и срезы в Python на примерах

Индексы дают доступ к отдельным элементам, срезы — к их кускам. Это база работы со списками и строками.

Индексы: нумерация с нуля

Элементы нумеруются с 0: первый — индекс 0, второй — 1 и так далее. Отрицательные индексы считают с конца: -1 — последний. Это касается и списков, и строк.

word = 'дрон'
print(word[0])   # 'д'
print(word[-1])  # 'н'

Срезы: берём кусок

Срез [start:stop] берёт элементы с индекса start до stop (не включая stop). Можно опускать края: [:2] — первые два, [2:] — с третьего до конца.

nums = [10, 20, 30, 40]
print(nums[1:3])   # [20, 30]
print(nums[:2])    # [10, 20]

Третий параметр — шаг

У среза есть третий параметр — шаг: [::2] берёт каждый второй элемент, а [::-1] переворачивает последовательность. Это компактный и мощный приём, который часто выручает.

Частые вопросы

Почему stop не включается? Так задумано: [1:3] берёт элементы 1 и 2, ровно stop-start штук.

Работают ли срезы со строками? Да, точно так же, как со списками.

Начать игру бесплатно
Попробуй прямо здесь
Уровень 1

Задание