Курс Python → Поиск индексов подстроки
Для того чтобы найти все индексы для подстроки в строке, мы можем создать пользовательскую функцию, которая будет итеративно проходить по строке и находить все вхождения подстроки. Например, мы можем создать функцию find_all_indexes(), которая будет принимать строку и подстроку в качестве аргументов и возвращать список всех индексов, по которым найдена подстрока.
def find_all_indexes(s, sub):
indexes = []
index = s.find(sub)
while index != -1:
indexes.append(index)
index = s.find(sub, index + 1)
return indexes
string = "hello world hello hello"
substring = "hello"
indexes = find_all_indexes(string, substring)
print(indexes) # выводит [0, 12, 18]
В приведенном примере мы создали функцию find_all_indexes(), которая ищет все вхождения подстроки «hello» в строке «hello world hello hello». Мы итеративно вызываем метод find() для поиска подстроки, начиная с последнего найденного индекса + 1. Когда метод find() возвращает -1, это означает, что больше вхождений не найдено, и мы завершаем выполнение функции, возвращая список всех найденных индексов.
Таким образом, мы можем легко находить все индексы для подстроки в строке, используя пользовательскую функцию и метод find(). Это удобный способ для более точного анализа текста и работы с подстроками в Python.
Другие уроки курса "Python"
- Функция enumerate() — Python
- Фильтры Pillow: NEAREST, BILINEAR, BICUBIC
- JMESPath в Python
- Конкатенация строковых литералов
- Python Тесты и Гайды
- Python 3.12: Псевдонимы типов
- Поиск кода
- Оператор is в Python
- Модуль subprocess: запуск внешних команд
- Анализ текста на русском языке с помощью Pymystem3
- Настройка нарезки списков
- Округление чисел с помощью round
- Работа с кортежами
- Уникальные значения из списка
- Применение функции к каждому элементу списка
- Поиск наиболее частого элемента
- Flask — веб-фреймворк Python
- Необязательные аргументы в Python
- Разделение строки на подстроки в Python
- Retrying в Python: повторные вызовы
- Непрерывная проверка в Python
- Обработка данных в Python
- Применение промокода в Много лосося
- Метод append() для списка
- Просмотр атрибутов и методов класса
- Работа с модулем Calendar
- Ошибка NotImplemented в Python
- Функции классификации комплексных чисел
- Цикл while в Python
- Работа с датой и временем в Python
- Ветвление выражения в Python
- Распаковка аргументов в Python
- Подсчет элементов с помощью Counter
- Удаление элементов из списка в Python.
- Поиск индекса элемента
- Порядок и длина множеств в Python
- Python и Монти Пайтон
- Сортировка HTML по CSS-селектору
- Магические методы в Python
- Работа с библиотекой xkcd
- Операторы присваивания в Python
- Структуры данных в Python
- Работа с IP-адресами в Python
- Эффективная конкатенация строк с использованием join()
- Enum в Python
- Создание виртуальной среды















