Что такое срез?
1. Что такое срез
Срез — это способ выбрать часть последовательности (список, строку, кортеж) с помощью индексов.
Синтаксис:
sequence[start:stop:step]
start
— индекс начала (включительно)stop
— индекс конца (не включительно)step
— шаг, по умолчанию1
2. Примеры со списками
lst = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(lst[2:7]) # [2, 3, 4, 5, 6] — элементы с индексом 2 до 6
print(lst[:5]) # [0, 1, 2, 3, 4] — с начала до 4
print(lst[5:]) # [5, 6, 7, 8, 9] — с 5 до конца
print(lst[::2]) # [0, 2, 4, 6, 8] — каждый второй элемент
print(lst[::-1]) # [9, 8, 7, 6, 5, 4, 3, 2, 1, 0] — разворот списка
3. Примеры со строками
text = "Hello, world!"
print(text[7:12]) # 'world'
print(text[:5]) # 'Hello'
print(text[::2]) # 'Hlo ol!'
print(text[::-1]) # '!dlrow ,olleH' — разворот строки
4. Срезы с отрицательными индексами
Отрицательные индексы считаются с конца последовательности.
lst = [0, 1, 2, 3, 4, 5]
print(lst[-3:]) # [3, 4, 5] — последние 3 элемента
print(lst[:-3]) # [0, 1, 2] — все кроме последних 3
print(lst[-1::-1]) # [5, 4, 3, 2, 1, 0] — разворот
5. Применение срезов в автоматизации тестирования
Получение части ответа API или лога.
Разделение строк или файлов на нужные части.
Обработка списков элементов UI или тестовых данных.
Быстрый разворот или фильтрация элементов.
# Пример: последние 5 ошибок теста
errors = ["err1", "err2", "err3", "err4", "err5", "err6"]
recent_errors = errors[-5:]
print(recent_errors) # ['err2', 'err3', 'err4', 'err5', 'err6']
Last updated
Was this helpful?