Питон срез строки

Строка Python поддерживает срезы для создания подстроки. Обратите внимание, что строка Python является неизменяемой, срезание создает новую подстроку из исходной строки, и исходная строка остается неизменной.

Срез строки Python

Синтаксис среза строки Python следующий:

str_object[start_pos:end_pos:step]

Срез начинается с индекса start_pos (включительно) и заканчивается индексом end_pos (исключительно). Параметр step используется для указания шагов от начального до конечного индекса. Срез строки Python всегда следует этому правилу: s[:i] + s[i:] == s для любого индекса ‘i’. Все эти параметры являются необязательными – значение по умолчанию для start_pos равно 0, значение по умолчанию для end_pos равно длине строки, а значение по умолчанию для step равно 1. Давайте рассмотрим несколько простых примеров использования функции среза строки для создания подстроки.

s = 'HelloWorld'

print(s[:])

print(s[::])

Вывод:

HelloWorld
HelloWorld

Обратите внимание, что поскольку не были предоставлены никакие параметры среза, подстрока равна исходной строке. Давайте рассмотрим еще несколько примеров срезания строки.

s = 'HelloWorld'
first_five_chars = s[:5]
print(first_five_chars)

third_to_fifth_chars = s[2:5]
print(third_to_fifth_chars)

Вывод:

Hello
llo

Обратите внимание, что значение индекса начинается с 0, поэтому start_pos 2 относится к третьему символу в строке.

Обратный срез строки

Мы можем перевернуть строку, используя срез, предоставив значение шага -1.

s = 'HelloWorld'
reverse_str = s[::-1]
print(reverse_str)

dlroWolleH Давайте рассмотрим еще несколько примеров использования шагов и отрицательных индексов.

s1 = s[2:8:2]
print(s1)

loo Здесь подстрока содержит символы с индексами 2, 4 и 6.

s1 = s[8:1:-1]
print(s1)

lroWoll Здесь значения индексов берутся с конца. Подстрока состоит из индексов с 1 по 7 с конца до начала.

s1 = s[8:1:-2]
print(s1)

lool Срез Python также работает с отрицательными индексами, в этом случае начальная позиция исключается, а конечная включается в подстроку.

s1 = s[-4:-2]
print(s1)

or Срез строки в Python грациозно обрабатывает индексы, выходящие за пределы диапазона.

>>>s = 'Python'
>>>s[100:]
''
>>>s[2:50]
'thon'

Вот и все для функции среза строки в Python для создания подстроки.

Вы можете проверить полный скрипт Python и больше примеров на Python нашего репозитория GitHub.

Source:
https://www.digitalocean.com/community/tutorials/python-slice-string