Как использовать срезы в Python: простое руководство для новичков
2026-02-26 18:03 Diff

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

Содержание

Что такое Python срез: понятие, синтаксис, примеры

Срезы (slices) в Python используются для работы с последовательностями: строками, списками и кортежами. Инструмент позволяет извлекать символ или фрагмент итерируемых объектов без вмешательства в исходное состояние кода. Срез создает новый объект с выбранными элементами исходного объекта.

Синтаксис Python среза:

Он устанавливает границы среза и его шаг:

  • start информирует о начале среза — элементе, начиная с которого алгоритм начинает выбирать символы или фрагмент последовательности. Python срез включает сам стартовый элемент, нумерация начинается с 0. Если показатель не указан, то отсчет начинается с 0.
  • stop информирует об окончании среза — элементе, до которого инструмент выбирает символы или фрагмент последовательности, исключая его. Если показатель не задан, то конечным будет автоматически считаться последний элемент последовательности, включая его.
  • step — шаг среза. Определяет интервал между элементами, которые механизм будет извлекать из последовательности.

Вывод: ['black', 'yellow']

Границы Python среза могут быть отрицательными. В этом случае срез будет выглядеть и работать следующим образом:

Вывод:['yellow', 'blue']

Чтобы срез захватил элемент, указанный последним, необходимо использовать встроенный метод len(list) для указания длины последовательности.

Попробуйте курс:

Python: Списки

Виды Python срезов

  • Срез строки.

С его помощью удобно выделять ключевые фразы или разбивать тексты на слова.

Вывод: "ell"

  • Срез списка.

Элементами списка могут быть другие списки, строки или числа.

Вывод: [12, 13, 14, 15, 16, 17]

  • Срез кортежа.

В кортежи могут входить числа, строки, списки и другие кортежи.

Вывод: ('banana', 'cherry', 'apple')

Читайте также:

[19 полезных библиотек](https://ru.hexlet.io/blog/posts/19-bibliotek-dlya-python?promo_name=blog&promo_position=body&promo_type=link &promo_start=021124) для Python

Функции Python срезов

  • Получение части данных из последовательности, например последних N элементов списка.

Вывод: ['g', 'h']

  • Выбор элементов последовательности с определенным интервалом.

Вывод: [0, 2, 4, 6, 8, 10, 12, 14]

или

Вывод: [2, 4, 6, 8, 10]

  • Изменение порядка элементов, в том числе расположение элементов в обратном порядке с помощью шага -1.

Вывод: "!nohtyP ,olleH"

  • Создание копии последовательности.

Вывод: ['B', 'e', 'r', 'l', 'i', 'N']

Вывод: ['B', 'e', 'r', 'l', 'i', 'n']

  • Замена части последовательностей.

Вывод: [2, 0, 0, 0, 14, 17, 20]

Вывод: [2, 0, 'four', 'five', 'six',17, 20]

Вывод: [2, 0, four, 's', 'i', 'x', 20]

Читайте также:

[Как я изучаю Python](https://ru.hexlet.io/blog/posts/19-bibliotek-dlya-python?promo_name=blog&promo_position=body&promo_type=link &promo_start=021124) на Хекслете

  • Добавление и удаление элементов в модифицируемых последовательностях.

Вывод: [2, 0, 0, 0, 9]

Вывод: [0, 0, 9]

  • Замена части последовательности с определенным шагом.

Вывод: [0, 5, 0, 11, 0, 17, 20]

Вывод: ['one', 5, 0, 'two', 0, 17, 'three']

Вывод: ['three', 5, 0, 'two', 0, 17, 'one']

  • Удаление и добавление элементов с определенным шагом.

Вывод: [2, 8, 14, 20]

  • Определение количества элементов в срезе.

Вывод: ["Two", "Three", "Four", "Five", "Six"]

Также полезно:

[Эффективная разработка на Python с PyCharm](https://ru.hexlet.io/blog/posts/effektivnaya-razrabotka-na-python-s-pycharm-sovety-i-tryuki?promo_name=blog&promo_position=body&promo_type=link &promo_start=021124): советы и трюки

Часто используемые Python срезы

Мы собрали для вас наиболее популярные срезы для оптимизации вашего кода:

  • [:] — копия последовательности.
  • [1:] — все элементы за исключением первого.
  • [:-1] — все элементы за исключением последнего.
  • [::-1] — обратная последовательность.
  • [1:-1] — все элементы за исключением последнего и первого.
  • [1::2] — вывод нечетных элементов последовательности со второго.
  • [::2] — вывод четных элементов последовательности с первого.
  • [-2:0:-1] — обратный порядок всех элементов за исключением первого и последнего.
  • [-2:0:-2] — обратный порядок каждого второго элемента за исключением первого и последнего.

Python — один из трех самых популярных языков программирования, он подходит для решения разнообразных задач на всех популярных платформах. В рамках курса [«Python-разработчик»](https://ru.hexlet.io/programs/python?promo_name=prof-python&promo_position=body&promo_type=link &promo_start=021124) детально изучают основы программирования на Python, его базовые элементы и возможности, включая срезы и другие полезные функции.