Строки в Python 3. Индексирование и срезы.

Строки в Python. Индексирование и срезы.

В этой статье вы узнаете про то, как соединить строки в Python, а так же, как извлекать подстроки и последовательности из одной строки.

Введение

Строки в Python — это последовательности символов, заключенные в одинарные, двойные или тройные кавычки.

Строки в Python неизменяемы.

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

Соединение строк также называется индексированием.

Официальная документация о строках в Python

Что такое соединение строк?

Соединение строк или индексация — это метод, с помощью которого мы можем получить доступ к любому символу или группе символов из строки. В Python символы или подстроки какой-либо строки могут быть доступны с помощью квадратных скобок [ ] точно так же, как мы получаем доступ к элементам из списка в Python. Мы можем получить доступ к символу из строки, используя как положительные, так и отрицательные индексы.

При использовании положительных индексов для соединения строк в Python первому символу строки присваивается индекс ноль, а индекс последующих символов увеличивается на 1 до конца.

Например, мы можем напечатать первый символ, третий символ и одиннадцатый символ строки, используя следующую программу. Обратите внимание, что индексация в Python основана на 0, то есть первому символу присваивается индекс 0, а не 1:

x = "Скоро наступит лето"

y = x[0]
print(y)

y = x[2]
print(y)

y = x[10]
print(y)

Вывод программы:

С
о
у

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

В следующем примере я использую отрицательную индексацию для печати символов строки Python:

x = "Скоро наступит лето"

y = x[-1]
print(y)

y = x[-3]
print(y)

y = x[-6]
print(y)

Вывод программы:

о
е
т

Как извлечь подстроку из строки?

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

Используя положительную индексацию, мы можем захватить подстроку с помощью оператора квадратных скобок [ ]. Мы можем указать индекс начального символа и индекс конечного символа строки, которая должна быть включена в подстроку. Чтобы извлечь подстроку используем string_name[start_index:last_index]. Символ в start_index включен в подстроку, но символ в last_index не включен. Включены только символы до last_index-1. Следовательно, start_index является инклюзивным, а last_index — эксклюзивным.

В приведенных ниже примерах вы увидите, что символы в start_index были включены в выходные данные, а символы в last_index не были включены в выходные данные:

x = "Скоро наступит лето"

y = x[0:2]
print(y)

y = x[4:7]
print(y)

y = x[0:7]
print(y)

Вывод программы:

Ск
о н
Скоро н

Чтобы извлечь подстроку от начала до заданного индекса, мы можем оставить пустым значение start_index:

x = "Скоро наступит лето"

y = x[:6]
print(y)

y = x[:8]
print(y)

y = x[:11]
print(y)

Вывод программы:

Скоро 
Скоро на
Скоро насту

Чтобы извлечь строку, начинающуюся с заданного индекса и заканчивающуюся последним индексом, мы можем просто оставить значение last_index пустым:

x = "Скоро наступит лето"

y = x[0:]
print(y)

y = x[3:]
print(y)

y = x[12:]
print(y)

Вывод программы:

Скоро наступит лето
ро наступит лето
ит лето

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

x = "Скоро наступит лето"

y = x[-10:-1]
print(y)

y = x[:-1]
print(y)

y = x[-5:-2]
print(y)

Вывод программы:

тупит лет
Скоро наступит лет
 ле

Подстроки в Python также являются строками, и мы можем выполнять такие операции, как конкатенация строк, разделение строк Python и так далее.

Например, мы можем выполнить конкатенацию строк, как показано в следующем примере:

x = "Скоро наступит лето"

y1 = x[-10:-1]
y2 = x[:-1]
y3 = x[-5:-2]

print(y1 + y2 + y3)

Вывод программы:

тупит летСкоро наступит лет ле

Как извлечь подпоследовательность из строки?

Подпоследовательность строки — это последовательность символов, которые извлекаются из строки, не нарушая порядок, в котором символы присутствуют в строке.

Символы в подпоследовательности могут быть или не быть непрерывными символами входной строки Python.

Чтобы извлечь подпоследовательность, я использую оператор квадратной скобки [ ]. Синтаксис для захвата подпоследовательности из строки — string_name[start_index, end_index, difference]».

Difference обозначает число, которое должно быть добавлено к start_index, чтобы получить индекс следующего символа, который будет включен в подпоследовательность, а difference-1 — это символы, которые пропускаются после того, как символ включен в подпоследовательность.

Рассмотрим пример:

x = "Скоро наступит лето"

y = x[0:10:2]
print(y)

y = x[0:10:3]
print(y)

y = x[0:10:5]
print(y)

Вывод программы:

Соонс
Срнт
С 

Заключение

В этой статье вы узнали об индексировании строк в Python. Вы также увидели, как извлекать подстроки и подпоследовательности из строки Python с помощью соединения строк.

Егор Егоров

Программирую на Python с 2017 года. Люблю создавать контент, который помогает людям понять сложные вещи. Не представляю жизнь без непрерывного цикла обучения, спорта и чувства юмора.

Ссылка на мой github есть в шапке. Залетай.

Оцените автора
Егоров Егор
Добавить комментарий