Курс 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"
- Поиск наиболее частого элемента в списке
- Логирование с Logzero
- Округление чисел с помощью round
- Очистка данных в Python
- Определение основы слова с showballstemmer
- Создание новых списков через list comprehensions
- Метод is_absolute() для PurePath
- Переопределение метода __lshift__
- Проверка элементов списка условием
- Поиск с помощью регулярных выражений
- Операторы Splat и splatty-splat
- Определение имен функций
- Удаление ссылок в Python
- Форматирование строк в Python
- Отображение графиков в Jupyter с Matplotlib
- Импорт модулей в Python 3.12
- Преобразование кортежа в словарь.
- Измерение времени выполнения кода в Python
- Изменение списка срезами
- Подсчет вхождений элементов
- Установка максимального количества цифр
- Вычисление фазы комплексного числа
- Обработка элементов в Python
- Замена символов в строке
- Отладка утечек памяти в Python
- Удаление дубликатов с помощью множеств
- Определение индекса элемента списка
- Работа с Requests для HTTP-запросов
- Создание списков в Python
- Уникальные значения из списка
- Экспорт данных с помощью writefile
- Встраивание HTML в Jupyter Notebook
- Переопределение метода __rshift__
- Капитализация строк
- Библиотека schedule: планировщик задач
- globals и locals
- Модуль array: создание и использование массивов
- Атрибуты класса и экземпляра в Python
- Сортировка HTML по CSS-селектору
- Конкатенация строк с join() в Python
- UserString в Python
- %pinfo: получение информации об объекте
- Выборка чисел
- Генератор списка с условием if
- JMESPath в Python
- Создание функций с произвольным количеством аргументов
- Управление асинхронными задачами с помощью Semaphore
- Измерение потребления памяти при сортировке















