10.1 Цикл по символах рядка
У Python рядки часто розглядаються як масиви/списки символів, що робить їх особливо зручними для маніпуляцій, аналогічних роботі з масивами в інших мовах програмування.
Ну, а раз рядок – це набір символів, то по них можна пройтись циклом.
Цикл по символах рядка
Для ітерації по кожному символу рядка можна використовувати простий цикл for. Це дозволяє виконувати операції з кожним символом окремо:
|
|
Важливо! У Python немає типу char для окремого символа. Один символ рядка — це все одно рядок.
10.2 Визначення довжини рядка
Що ще можна зробити з рядком? Звичайно ж визначити його довжину – дізнатися скільки в ньому символів. Для цього у Python є спеціальна вбудована функція len(). Ця функція повертає кількість символів у рядку:
text = "Hello, world!"
length = len(text)
print(length) # Виведе: 13
10.3 Отримання конкретного символа
Також ви можете отримати конкретний символ рядка за його номером. Точніше, за його індексом.
Важливо! Індекси списків та масивів у Python починаються з 0. Якщо в рядку 10 символів, то вони матимуть індекси: 0, 1, 2, ...9.
Загальний вигляд отримання символу за індексом виглядає так:
string[index]
Давайте виведемо на екран усі символи рядка, але звернемося до них за їхніми індексами:
|
|
10.4 Входження підрядка
Перевірка входження одного рядка в інший — одна з базових задач, яку часто потрібно вирішувати під час програмування на Python. Ця можливість широко використовується у багатьох додатках, включаючи обробку текстових даних, валідацію вводу користувача та пошук даних у рядках.
Для цієї задачі у Python є кілька способів, як унікальні особисто для нього, так і поширені в інших мовах програмування:
Оператор in:
Це найпростіший і часто використовуваний метод для перевірки наявності підрядка у рядку. Він повертає True, якщо підрядок присутній у рядку, і False в іншому випадку.
text = "Hello, world!"
print("world" in text) # Виведе: True
Метод find():
Метод find() повертає індекс першого входження підрядка в рядок, якщо підрядок знайдено, і -1, якщо підрядок відсутній. Це дозволяє не тільки перевірити наявність підрядка, але й дізнатися його положення.
text = "Hello, world!"
position = text.find("world")
print(position) # Виведе: 7
Метод index():
Схожий на find(), але замість повернення -1 при відсутності підрядка, метод index() генерує виключення ValueError. Цей метод корисний, коли відсутність підрядка є неочікуваною і має призвести до помилки.
text = "Hello, world!"
try:
position = text.index("world")
print(position) # Виведе: 7
except ValueError:
print("Substring not found.")
Метод count():
Метод count() підраховує, скільки разів підрядок зустрічається в рядку. Це корисно, коли потрібно знати не тільки факт входження, але й кількість входжень.
text = "Hello, world!"
cnt = text.count("l")
print(cnt) # Виведе: 3
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ