11.1 Завдання індексів
У Python витяг підрядків — це часто вживана операція, що дозволяє маніпулювати текстовими даними та витягати значущі частини інформації зі строк. Розглянемо кілька способів отримання підрядків, кожен з яких має свої особливості та області застосування.
Використання зрізів
Зрізи (slices) — це основний спосіб отримання підрядків у Python. Зріз у Python створюється за допомогою синтаксису string[start:stop:step], де:
start— початковий індекс (включно),stop— кінцевий індекс (не включно),step— крок, з яким витягуються символи.
Синтаксис зрізів дозволяє вказувати початковий та кінцевий індекси підрядка, який ти хочеш витягти.
text = "Hello, world!"
substring = text[7:12] # Виведе 'world'
11.2 Неповне завдання індексів
Усі три індекси для витягнення підрядка вказувати не обов'язково.
- Якщо
startопущено, зріз починається з початку строки. - Якщо
stopопущено, зріз іде до кінця строки. - Якщо
stepопущено, символи витягуються один за одним.
Приклади:
Давайте напишемо приклад, щоб отримати підрядок, починаючи з 7-го символа і до кінця строки
text = "Hello, world!"
substring = text[7:] # Виведе 'world!'
Тепер з початку строки і до 10 символу. Сподіваюся, ти пам'ятаєш, що останній символ діапазону не включається в підрядок-результат.
text = "Hello, world!"
substring = text[:10] # Виведе 'Hello, wor'
11.3 Від'ємні індекси
Від'ємні індекси в Python дозволяють звертатися до елементів строки починаючи з кінця. Використання від'ємних індексів робить код часто більш читабельним та зручним, особливо коли потрібно працювати з кінцем строки.
Отримання останнього символа строки:
text = "Python"
last_char = text[-1]
print(last_char) # Виведе: 'n'
Отримання передостаннього символа строки:
text = "Python"
second_last_char = text[-2]
print(second_last_char) # Виведе: 'o'
Для отримання останніх трьох символів строки:
text = "Python"
last_three = text[-3:]
print(last_three) # Виведе: 'hon'
Для отримання строки, виключаючи останній символ:
text = "Python"
all_but_last = text[:-1]
print(all_but_last) # Виведе: 'Pytho'
Просунуте використання зрізів
За допомогою параметра step можна створювати більш складні зрізи, наприклад, для витягнення символів у зворотному порядку:
# Перевернути строку
print(text[::-1]) # '!dlrow ,olleH'
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ