Курс 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. Оптимизация методов в Python 3.7
  4. Замер времени выполнения кода
  5. Сравнение def и lambda-функций
  6. Оператор (*) в Python
  7. Преобразование символов в нижний регистр
  8. Создание вкладок с TKinter
  9. Декораторы в Python
  10. Генераторы в Python
  11. Присвоение и ссылки
  12. Комментарии в Python
  13. Оператор * в Python
  14. Работа с датой и временем в Python
  15. Работа с байтовыми строками в Python
  16. Фильтрация входных данных в Python
  17. Модуль math: константы π и e
  18. Работа с библиотекой xkcd
  19. Удаление файлов с shutil.os.remove()
  20. Сравнение строк в Python
  21. Наследование в программировании
  22. Игра «Камень, ножницы, бумага» — Python
  23. Работа с множествами в Python
  24. Вызов внешних программ в Python с помощью sh
  25. Исправление ошибки NameError
  26. Перемешивание списка с shuffle()
  27. Распаковка элементов массива
  28. Дизассемблирование Python кода
  29. Просмотр атрибутов и методов класса
  30. Функция enumerate() в Python
  31. Логирование с Logzero
  32. Преобразование чисел в восьмеричную строку
  33. Основы Python
  34. Установка и использование Telegram API в Python
  35. Работа с пользовательским вводом
  36. Создание именованных кортежей в Python
  37. Преобразование данных в Python
  38. Основные операции с Numpy
  39. Итераторы с потерямиZIP
  40. Форматирование вывода с F-строками
  41. Поиск с помощью регулярных выражений
  42. Подсчет вхождений элементов
  43. Перебор элементов списка в Python

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