Нарезка — это мощная функция Python, позволяющая извлекать части последовательностей, такие как строки, списки и кортежи. Чаще всего срезы используются для извлечения непрерывной части последовательности, но существует множество других возможностей для изучения. В этой статье мы рассмотрим некоторые продвинутые методы нарезки и нарезки в Python, используя нотацию среза.

Прежде чем углубиться, давайте рассмотрим основы записи срезов. Срез определяется тремя целыми числами: start, stop и step. Срез начинается с индекса, указанного start, заканчивается индексом, заданным stop (но не включает этот индекс), и выбирает каждый шаг-й элемент. Если какие-либо из этих целых чисел опущены, по умолчанию они равны 0, длине последовательности и 1 соответственно.
Вот пример нарезки списка с использованием нотации среза:
>>> a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> a[2:7:2] [2, 4, 6]
Это выбирает элементы 2, 4 и 6 из списка. Теперь давайте рассмотрим некоторые продвинутые методы нарезки.
№1. Обратная последовательность:
Вы можете легко изменить последовательность, используя нотацию среза, установив для шага значение -1. Это выбирает каждый элемент в обратном порядке.
>>> a[::-1] [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
№ 2. Выберите каждый n-й элемент:
Вы можете выбрать каждый n-й элемент последовательности, установив для шага значение n.
>>> a[::3] [0, 3, 6, 9]
Это выбирает каждый третий элемент списка.
№3. Выберите подпоследовательность в обратном порядке:
Вы можете выбрать подпоследовательность последовательности в обратном порядке, установив начало и конец в обратном порядке и установив шаг равным -1.
>>> a[7:2:-1] [7, 6, 5, 4, 3]
Это выбирает элементы 7, 6, 5, 4 и 3 из списка в обратном порядке.
№ 4. Выберите подпоследовательность и измените ее на месте:
Вы можете выбрать подпоследовательность последовательности и изменить ее на месте, используя нотацию среза. Это полезно для обновления частей списка или строки.
>>> a[2:7] = [10, 11, 12] >>> a [0, 1, 10, 11, 12, 7, 8, 9]
Это заменяет элементы со 2 по 6 списком [10, 11, 12]
№ 5. Выберите подпоследовательность и удалите ее:
Вы можете выбрать подпоследовательность последовательности и удалить ее, используя нотацию среза.
>>> del a[2:7] >>> a [0, 1, 8, 9]
Это удаляет элементы со 2 по 6 из списка.
Это всего лишь несколько примеров возможностей нотации слайсов в Python. Освоив эти передовые методы, вы сможете сделать свой код более кратким и выразительным. Удачной нарезки!
Пожалуйста, поддержите его, похлопав 👏 и поделившись.
Спасибо, что прочитали.
Хотите еще? Нет проблем, посмотрите этот мини-урок :