Чтобы найти все вхождения подстроки в строку в Python, вы можете использовать несколько методов. Вот несколько часто используемых подходов:
-
Использование метода
find()в цикле:def find_all_occurrences(string, substring): occurrences = [] index = -1 while True: index = string.find(substring, index + 1) if index == -1: break occurrences.append(index) return occurrences -
Использование понимания списка с помощью функции
enumerate():def find_all_occurrences(string, substring): return [i for i, _ in enumerate(string) if string.startswith(substring, i)] -
Использование регулярных выражений с модулем
re:import re def find_all_occurrences(string, substring): occurrences = [match.start() for match in re.finditer(substring, string)] return occurrences
Эти методы возвращают список индексов, в которых подстрока встречается внутри строки. Помните, что Python чувствителен к регистру, поэтому сравнение также учитывает регистр.