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

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

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

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

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

word = 'дрон'
print(word[0])   # 'д'
print(word[-1])  # 'н'
012345PYTHON-6-5-4-3-2-1
У строки два набора индексов: сверху положительные (с начала, от 0), снизу отрицательные (с конца, от -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

Задание

Все обучающие игры «Дрон Кодер»

Одна вселенная — много модулей. Программирование, математика и логика в одной игре: пиши код, считай, решай задачи — а дрон-фермер летит по полю и собирает урожай. В каждом модуле первый уровень бесплатный, без регистрации.

📈 Математика · алгебра и графики
📖 Русский язык