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
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ