Курс Python → Поиск всех индексов подстроки

Метод index() в Python используется для поиска первого вхождения подстроки в строку и возвращает индекс этого вхождения. Однако, если мы хотим получить доступ ко всем индексам, по которым находится подстрока, мы можем написать пользовательскую функцию, которая будет искать все вхождения подстроки и возвращать список индексов.

Пример пользовательской функции для поиска всех индексов подстроки в строке:


def find_all_indexes(input_str, substring):
    indexes = []
    index = -1
    while True:
        index = input_str.find(substring, index + 1)
        if index == -1:
            break
        indexes.append(index)
    return indexes

input_str = "hello world hello"
substring = "hello"
indexes = find_all_indexes(input_str, substring)
print(indexes)

В данном примере мы создали функцию find_all_indexes(), которая принимает строку и подстроку, и возвращает список всех индексов, по которым находится подстрока. Затем мы вызываем эту функцию с примером строки «hello world hello» и подстрокой «hello» и выводим список индексов, по которым находится данная подстрока.

Таким образом, используя пользовательскую функцию, мы можем получить доступ ко всем индексам, по которым находится подстрока в строке, в отличие от метода index(), который возвращает только первое вхождение подстроки.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Генераторы в Python
  2. Работа с аргументами командной строки
  3. Преобразование числа в список цифр
  4. Генераторы в Python
  5. Частичное применение функций в Python
  6. Асинхронный код в Python
  7. Принципы Zen Python
  8. Пересечение списков с использованием множеств
  9. Метод округления чисел
  10. Таймер обратного отсчета
  11. Принципы программирования
  12. Python: возвращение нескольких значений
  13. Функция с **kwargs в Python
  14. Работа с изменяемыми коллекциями
  15. Генераторы в Python
  16. Отправка HTTP-запросов с User-Agent
  17. Генерация UUID в Python
  18. Работа с аргументами командной строки в Python
  19. Сериализация объектов в Python
  20. Транспонирование матрицы
  21. Работа с модулем glob в Python
  22. Поиск HTML-элементов с BeautifulSoup
  23. Дизассемблирование Python кода
  24. Конвертация коллекций в Python
  25. Блок else в Python
  26. Генераторы в Python
  27. Хешируемые ключи в Python
  28. Concrete Paths — метод .with_suffix()
  29. Оператор (*) в Python
  30. Метод __call__ в Python
  31. Использование двоеточия в Python
  32. Замена переменных в Python
  33. Модуль inspect
  34. Создание графиков в терминале
  35. Курсы Яндекс Практикум
  36. Делегирование в Python
  37. Модуль pprint
  38. Импорт в Python: список all
  39. Переопределение унарных операторов
  40. Генераторы в Python
  41. Вычисление разности множеств в Python
  42. Синхронизация доступа к ресурсам
  43. Описание скриптов в README
  44. Лямбда-функции в Python
  45. Декораторы с аргументами в Python

Marketello читают маркетологи из крутых компаний