Курс 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"
- Визуализация пропусков данных
- Операция += для списков
- Распаковка элементов последовательности
- Бесконечные списки в Python
- Именование переменных в Python
- Работа с комплексными числами
- Функция zip() — объединение последовательностей
- Создание задания в Cron
- Python: Фильтрация списков с помощью filter()
- Профилирование кода на Python
- Операторы присваивания в Python
- Сортировка с помощью параметра key
- Оператор объединения словарей
- Работа с NumPy.linalg
- Объединение словарей в Python
- Выход из профиля в Django
- Обработка исключений в Python
- Копирование списков в Python
- Символ подчеркивания в Python
- Работа с датой и временем в Python
- Переопределение метода __pow__
- Работа с изменяемыми коллекциями
- Методы __repr__ и __str__ в Python
- Переопределение метода __or__()
- Лямбда-функции в Python
- Порядок операций в Python
- Python: отсутствие точек с запятыми
- Декоратор Property в Python
- Переменная Шредингера
- Применение функции map() с лямбда-функциями
- Функция rsplit() в Python
- Оптимизация поиска в словарях
- Группировка элементов в словарь
- Обязательные аргументы в Python
- Списковое включение в Python
- Работа с collections в Python
- Оператор деления для класса Rational
- Запрос DELETE с библиотекой requests
- Генерация строк с .join()
- Простой калькулятор Python
- Вложенные генераторы в Python
- Передача параметров в Python
- Оценка точности модели















