Python Строковый метод find() с примерами
⚡ Умное резюме
Python Метод `find()` — это встроенный метод, который возвращает индекс первого вхождения подстроки в строке. Он возвращает -1, если подстрока отсутствует, чтобы избежать исключений.

Что такое Python Строка найти()?
Python Поиск строки() является функцией, доступной в Python Библиотека для поиска индекса первого вхождения подстроки в заданной строке. Функция find() возвращает -1 вместо генерации исключения, если указанная подстрока отсутствует в заданной строке. Это одна из Pythonнаиболее часто используемый строковые методы для поиска текста.
Синтаксис Python поиск строки()
Основной синтаксис Python Функция find() выглядит следующим образом:
string.find(substring,start,end)
Параметры метода find()
Вот три параметра функции find(). Python:
- подстрока: Подстрока, которую вы хотите найти в заданной строке.
- Начало: (необязательно) Начальное значение, с которого начнется поиск подстроки. По умолчанию равно 0.
- конец: (необязательно) Конечное значение, при котором поиск подстроки завершится. По умолчанию значение равно длине строки.
Пример метода find() со значениями по умолчанию
Параметры, передаваемые в Python Метод find() возвращает подстроку, то есть строку, которую вы хотите найти, плюс начальное и конечное значения. Начальное значение по умолчанию равно 0, а конечное значение — это длина строки.
В этом примере мы будем использовать метод find(). Python со значениями по умолчанию.
Метод find() ищет подстроку и возвращает позицию первого её вхождения. Если подстрока встречается в заданной строке несколько раз, метод всё равно вернёт индекс или позицию первого вхождения.
Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.
mystring = "Meet Guru99 Tutorials Site.лучших site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials"))
Выход:
The position of Tutorials is at: 12
Пример find() с использованием стартового аргумента
Вы можете выполнить поиск подстроки в заданной строке и указать начальную позицию, с которой начнется поиск. Для этого можно использовать параметр start.
В приведенном ниже примере начальная позиция указана как 20, а метод find() — в Python Поиск начнётся с позиции 20. В данном случае конечной позицией будет длина строки, поэтому поиск будет продолжаться до конца строки, начиная с позиции 20.
Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.
mystring = "Meet Guru99 Tutorials Site.лучших site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials", 20))
Выход:
The position of Tutorials is at 48
Пример find() с использованием начальных и конечных аргументов
Используя параметры начала и конца, мы можем ограничить поиск, вместо того чтобы искать по всей строке.
Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.
mystring = "Meet Guru99 Tutorials Site.лучших site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials", 5, 30))
Выход:
The position of Tutorials is at 12
Пример использования метода find() для определения позиции заданной подстроки в строке.
Известно, что функция find() помогает найти индекс первого вхождения подстроки. Она возвращает -1, если подстрока отсутствует в заданной строке. В приведенном ниже примере показан индекс, когда строка присутствует, и -1, когда искомая подстрока не найдена.
Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.
mystring = "Meet Guru99 Tutorials Site.лучших site for Python Tutorials!"
print("The position of лучших site is at:", mystring.find("лучших site", 5, 40))
print("The position of Guru99 is at:", mystring.find("Guru99", 20))
Выход:
The position of лучших site is at: 27 The position of Guru99 is at: -1
Python строка rfind()
Python Функция rfind() аналогична функции find(), с той лишь разницей, что rfind() возвращает наибольший индекс для заданной подстроки, а find() — наименьший, то есть самый первый индекс. Обе функции, rfind() и find(), возвращают -1, если подстрока отсутствует.
В приведенном ниже примере у нас есть строка «Meet» Guru99 Сайт учебных пособий. лучший сайт для Python Руководства!” и попытается найти позицию подстроки Tutorials, используя функции find() и rfind(). Подстрока Tutorials встречается в строке дважды.
Вот пример, в котором используются как find(), так и rfind().
mystring = "Meet Guru99 Tutorials Site.лучших site for Python Tutorials!"
print("The position of Tutorials using find() : ", mystring.find("Tutorials"))
print("The position of Tutorials using rfind() : ", mystring.rfind("Tutorials"))
Выход:
The position of Tutorials using find() : 12 The position of Tutorials using rfind() : 48
В результате выполнения видно, что функция find() возвращает индекс самой первой найденной подстроки Tutorials, а функция rfind() возвращает индекс последней подстроки Tutorials.
Python строковый индекс()
Python Функция `index()` возвращает позицию заданной подстроки, подобно функции `find()`. Единственное различие между ними заключается в том, что `index()` генерирует исключение, если подстрока отсутствует в строке, а `find()` возвращает -1.
Вот рабочий пример, показывающий поведение функций index() и find().
mystring = "Meet Guru99 Tutorials Site.лучших site for Python Tutorials!"
print("The position of Tutorials using find() : ", mystring.find("Tutorials"))
print("The position of Tutorials using index() : ", mystring.index("Tutorials"))
Выход:
The position of Tutorials using find() : 12 The position of Tutorials using index() : 12
Мы получаем одинаковую позицию как для find(), так и для index(). Рассмотрим пример, когда заданная подстрока отсутствует в строке.
mystring = "Meet Guru99 Tutorials Site.лучших site for Python Tutorials!"
print("The position of Tutorials using find() : ", mystring.find("test"))
print("The position of Tutorials using index() : ", mystring.index("test"))
Выход:
The position of Tutorials using find() : -1
Traceback (most recent call last):
File "task1.py", line 3, in <module>
print("The position of Tutorials using index() : ", mystring.index("test"))
ValueError: substring not found
В приведенном выше примере мы пытаемся найти позицию подстроки «test». Подстрока отсутствует в заданной строке, поэтому, используя функцию find(), мы получаем позицию -1, но при использовании функции index() возникает ошибка, как показано выше.
Чтобы найти общее количество вхождений подстроки
Чтобы найти общее количество вхождений подстроки в заданной строке, мы воспользуемся функцией find(). PythonМы будем перебирать строку с помощью цикла for, начиная с 0 и до конца строки, используя параметр startIndex для функции find().
Переменные startIndex и count будут инициализированы значением 0. Внутри цикла for мы проверим, присутствует ли подстрока в заданной строке, используя функцию find() с startIndex равным 0.
Если значение, возвращаемое функцией find(), не равно -1, то startIndex обновит индекс, по которому найдена строка, а также увеличит значение счетчика.
Вот рабочий пример:
my_string = "test string test, test string testing, test string test string"
startIndex = 0
count = 0
for i in range(len(my_string)):
k = my_string.find('test', startIndex)
if(k != -1):
startIndex = k+1
count += 1
k = 0
print("The total count of substring test is: ", count )
Выход:
The total count of substring test is: 6
" Узнать больше о Python Разделение строки()
