Курс 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. Работа с *args и **kwargs в Python
  3. Работа с PosixPath() в Python
  4. inspect в Python: анализ кода
  5. Использование модуля __future__
  6. Применение функции map() с лямбда-функциями
  7. Удаление элементов из списка в Python.
  8. Разделение строки с помощью re.split()
  9. Рациональные числа в Python
  10. Операторы увеличения и уменьшения переменной
  11. Метод rlshift для битового сдвига
  12. Получение срезов итераторов
  13. Проблемы с именами переменных
  14. Ключевое слово global в Python
  15. Декораторы в Python
  16. Создание таблиц в терминале с PrettyTable
  17. Обработка ошибок в Python
  18. Избегание изменяемых аргументов
  19. Сортировка данных с лямбда-функциями
  20. Просмотр атрибутов и методов класса
  21. Хеширование паролей с использованием salt
  22. Отправка HTTP-запросов в Python
  23. Обработка исключений в Python
  24. Сравнение def и lambda в Python
  25. Преобразование Excel в PDF с Spire.XLS
  26. Основы слова
  27. Объединение словарей в Python
  28. Условные выражения в Python
  29. Создание и операции с дробями
  30. Создание словарей и множеств в Python.
  31. Извлечение аудио из видео
  32. Частичное совпадение пользовательского ввода в Python 3.10
  33. Переворот строки с помощью срезов
  34. Форматирование строк в Python
  35. Передача параметров в Python
  36. Переопределение метода __or__()
  37. Изменение объектов в Python
  38. Модуль inspect: получение информации о объектах
  39. Работа с модулем Calendar
  40. Область видимости переменных в Python
  41. Проверка запуска скрипта или импорта модуля
  42. Игра «Виселица» на Python

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