Курс 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. Подсчет элементов с помощью Counter из collections
  2. Частичное совпадение пользовательского ввода в Python 3.10
  3. Чтение бинарного файла в Python.
  4. Чтение и запись TOML-конфигов
  5. Работа с Requests для HTTP-запросов
  6. Замена символов в Python
  7. Оформление текста в консоли с TermColor
  8. Срезы в Python
  9. Повторение элементов в Python
  10. Преобразование символов в нижний регистр
  11. Передача неизвестных аргументов в Python.
  12. Перегрузка операторов в Python
  13. Частичное применение функций в Python
  14. Генераторы в Python
  15. Работа с итераторами в Python
  16. Многострочные строки в Python
  17. Методы shutil для работы с файлами
  18. Делегирование в Python
  19. Применение функции к списку
  20. Работа с географическими данными.
  21. Переопределение метода __rshift__
  22. Расчет времени выполнения
  23. Работа с контекстными менеджерами
  24. Декораторы в Python
  25. Работа с JSON в Python
  26. Аннотации типов в Python
  27. Удаление дубликатов из списка с помощью dict.fromkeys
  28. Метод getitem для доступа к элементам последовательности
  29. Группировка элементов Python
  30. Метод repr() в Python
  31. Структура данных словарь в Python
  32. Генератор списка в Python
  33. Возвращение нескольких значений
  34. Метод __call__ в Python
  35. Создание генераторов
  36. Создание лямбда-функций
  37. Лямбда-функции в defaultdict
  38. Философия Python
  39. Декораторы с аргументами
  40. Группы исключений в Python
  41. Метод __iand__ для пользовательских классов
  42. Передача словаря через **kwargs
  43. Defaultdict в Python
  44. Модуль sys: основы
  45. Работа с CSV файлами
  46. Генерация случайных чисел в Python

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