Курс 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. Поиск подстроки в строке
  2. Удаление дубликатов из списка с помощью dict.fromkeys
  3. Поиск подстроки в строке
  4. Метод setitem в Python
  5. Список и кортеж в Python
  6. Работа с zip-архивами в Python
  7. Транспонирование матрицы
  8. Библиотека schedule: планировщик задач
  9. Импорт объектов из модулей
  10. Counter() — подсчет элементов
  11. Конкатенация строк с помощью join()
  12. Эффективная конкатенация строк в Python
  13. Декоратор total_ordering для класса Point
  14. История Python
  15. Отладка производительности Python
  16. Метод ior для битовых операций
  17. Запуск внешнего кода в Jupyter
  18. Генерация случайных данных в NumPy
  19. Фильтрация элементов с помощью islice
  20. Модуль math: константы π и e
  21. Списки: объединение, изменение
  22. Генерация случайных чисел в Python
  23. Инициализация переменных
  24. Howdoi — получение ответов из терминала
  25. Курсы Яндекс Практикум
  26. Метод count в Python: почему count(», ») возвращает 4?
  27. Преобразование списков в словарь
  28. Поиск уникальных и повторяющихся элементов
  29. Переворот строки
  30. Шаблоны и наследование в Flask
  31. Изменение регистра данных
  32. Параллельные вычисления в Python
  33. Роль запятой в Python
  34. Транспонирование 2D-массива с помощью zip
  35. Философия Python
  36. Метод __imod__ для Python
  37. Объединение списков в строку
  38. Работа со списками
  39. Освоение Python
  40. Названия переменных
  41. Основы работы со списками
  42. Установка и использование модуля Wikipedia
  43. Работа с GitHub в Telegram
  44. Генераторы в Python
  45. Поиск шаблона в строке
  46. Удаление элемента по индексу в Python

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