Сообщить об ошибке.

Получение среза sequence[i:j] в Python

Получение части последовательности

Синтаксис:

sequence[i:j]

Параметры:

Результат:

  • новая последовательности того-же типа

Описание:

Операция позволяет получить срез/часть последовательности от индекса i до индекса j.

Результатом будет срез/часть последовательности sequence от индекса i до индекса j. Операцию еще называют "получить срез последовательности". Дополнительно смотрите встроенную функцию slice().

Индексирование последовательностей всегда начинается с 0.

Если индексы среза i и j отрицательны, то индексы будут считаться относительно конца последовательности sequence. В этом случае положительные индексы такого же среза можно посчитать по формулам len(sequence) - i и len(sequence) - j. Обратите внимание, что -0 по-прежнему будет 0.

Срез последовательности sequence по индексам от i до j определяется как последовательность элементов с индексами в диапазоне i <= k < j.

  • Если индексы i или j больше len(sequence), то вместо этих значений будет использоваться len(sequence).
  • Если значение индекса i опущено или отсутствует, то используется i = 0.
  • Если значение индекса j опущено или отсутствует, то используется j = len(sequence).
  • Если i >= j, то получим пустой срез.

Эта операция поддерживаются большинством типов последовательностей, как изменяемых, так и неизменяемых.

Примечание: Множества set не поддерживает индексирование элементов, т.к. это неупорядоченная коллекция без повторяющихся элементов.

Также читайте:

Примеры получения среза.

>>> x = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
>>> x[5:]
# [5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
>>> x[-5:]
# [10, 11, 12, 13, 14]
>>> x[:10]
# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> x[:-10]
# [0, 1, 2, 3, 4]
>>> x[2:10]
# [2, 3, 4, 5, 6, 7, 8, 9]
>>> x[-10:-2]
# [5, 6, 7, 8, 9, 10, 11, 12]

# j > длины последовательности
>>> x[2:20]
# [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]

# Если i >= j, то получим пустой срез.
>>> x[10:8]
# []