Курс 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. Проверка ввода с помощью isdigit
  3. Возврат нескольких значений из функции
  4. Создание и использование ChainMap
  5. Оптимизация методов в Python 3.7
  6. Транспонирование матрицы
  7. Генератор списка в Python
  8. Скрытие вывода данных
  9. Библиотека wikipedia для Python
  10. Lambda Functions in Python
  11. Декораторы в Python
  12. Метод bool() в Python
  13. Модуль itertools: комбинации и перестановки
  14. Просмотр атрибутов и методов класса
  15. Работа с файлами в Python
  16. Отладка кода
  17. Парсинг веб-страниц с Beautiful Soup
  18. Отправка поздравлений по дню рождения
  19. Переменные в Python: сокращение гласных
  20. Логические операторы в Python
  21. Сокращение ссылок с pyshorteners
  22. Метод join() для объединения элементов строки
  23. Python Менеджер контекста
  24. Модуль inspect: получение информации о объектах
  25. Переменные в Python
  26. Срез в Python
  27. Преобразование чисел в Python
  28. Комментарии в Python
  29. Функция map() в Python
  30. Функция print() — вывод информации
  31. Обработка исключений в Python 3
  32. Визуализация пропусков данных
  33. Делегирование в Python
  34. Управление контекстом выполнения
  35. Обработка ошибок в Python
  36. Структуры данных в Python
  37. Работа со строками в Python
  38. Измерение времени выполнения кода
  39. Сериализация объектов в Python
  40. Работа с коллекциями Python
  41. Непрерывная проверка в Python
  42. Улучшенные подсказки для импорта в Python 3.12
  43. Доступ к локальным переменным
  44. Реализация операции -= для пользовательского класса
  45. Иерархия классов в Python
  46. Работа с изображениями Pillow
  47. Нахождение разницы между списками в Python
  48. Форматирование строк с % в Python

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