Автор оригинала: Pankaj Kumar.
Функция Slice () Python () Возвращает объект среза, представляющий набор индексов, указанных диапазоном (запуск, остановкой, шагом).
Кусок Python ()
Синтаксис функции Slice Python:
class slice(stop) class slice(start, stop[, step])
Обратите внимание, что функция ломтика возвращает объект среза. Мы можем пройти этот объект как набор индексов с такими последовательностями, как строка, список, кортеж и т. Д.
Функция ломтики Python позволяет легко создавать поэтапную последовательность, не выполняя полную итерацию на существующую последовательность.
Функциональные аргументы Slice ()
- Начать : Указывает начало значения индекса. Это необязательно и по умолчанию нет.
- Стоп : Указывает конец значения индекса. Это обязательный параметр.
- шаг : Указывает шаги, чтобы занять от начала, чтобы остановить индекс. Это дополнительный параметр и настройки по умолчанию.
Объект Slix Python имеет атрибуты данных только для чтения – начало, STOP и STEP – который возвращает значения аргумента (или значение по умолчанию).
Давайте посмотрим, как создать объекты среза.
s = slice(1, 10, 2) # indexes 1,3,5,7,9 print(type(s)) print(s.start) print(s.stop) print(s.step) s = slice(5) # indexes 0,1,2,3,4 print(s.start) print(s.stop) print(s.step)
Выход:
1 10 2 None 5 None
Объект среза Python не имеет самостоятельного использования, это полезно при использовании в сочетании с последовательностями для создания подсигенции.
Строка нарезки Python
Давайте посмотрим, как использовать функцию среза со строкой. Мы пройдем объект Slice, как обычный индекс, чтобы получить значение подстроки из строки.
s = slice(1, 10, 2) # indexes 1,3,5,7,9 print('abcde'[s])
Выход: ведущий
Обратите внимание, что если индексы среза более чем длина последовательности, исключение не поднимается, а данные возвращаются до максимального доступного индекса.
Мы также можем пропустить отрицательные значения для функции Slice (). В этом случае итерация будет выполняться назад I.e. От конца начать.
s = slice(-1, -3, -1) # indexes -1, -2 print('abcde'[s])
Выход: ред
Список ломтиков Python/Array
Давайте посмотрим на пример использования функции Slice () со списком или массивом.
s = slice(0, 3) # indexes 0, 1, 2 my_list = [1, 2, 3, 4, 5, 6] print(my_list[s])
Выход: [1, 2, 3]
Кусочек Python Tupple
Мы можем использовать Slicing с кортежом, потому что это последовательность.
s = slice(2) my_tuple = [1, 2, 3, 4, 5, 6] print(my_tuple[s])
Выход: [1, 2]
Python Slice расширенный индексирующий синтаксис
Поскольку нарезка очень популярна в численном питоне, есть сокращенный способ создания объекта среза.
a[start:stop:step]
Давайте посмотрим некоторые примеры нарезки, используя подход к сокращению.
x = 'abcde' y = x[1:3:1] # 1,2 print(y) y = x[1:3] # 1,2 print(y) y = x[2:] # 2 to length of sequence print(y) y = x[:5:2] # 0,2,4 print(y) y = x[:] # copy of sequence print(y) y = x[-1:-4:-1] # reverse iteration, end to start print(y)
Выход:
bc bc cde ace abcde edc
Вывод самоочетена и важные детали уже упоминаются в комментариях.
Резюме
Slice Python () – очень полезная функция. Мы можем создать подсистурную последовательность на основе шагов, легко и окончания индексов, не выполняя полную итерацию.
Ссылка: Официальная документация