Метод строк find() в Python

Метод find() встроен в стандартный Python. Для поиска строки достаточно вызвать этот метод на объекте string, например, так: "string to search".find("search").

Метод find() ищет строку запроса и возвращает позицию первого символа, если искомая строка найдена. Если она не найдена, возвращается -1. Вы можете добавить начальный и конечный индекс: find(query, start, end), но эти параметры необязательны.

Для примера попробуйте воспользоваться приведенным ниже кодом:

Скачивайте книги ТОЛЬКО на русском языке у нас в телеграм канале: PythonBooksRU
s = "That I ever did see. Dusty as the handle on the door"

index = s.find("Dusty")
print(index)

Сохраните файл под именем search.py и запустите из терминала или IDE. Вы должны увидеть следующий результат:

Ключевое слово in

Вы также можете использовать ключевое слово in:

s = "That I ever did see. Dusty as the handle on the door"

if "Dusty" in s:
    print("query found")

Разница в том, что ключевое слово in проверяет, содержит ли строка значение, а find() возвращает позицию начала искомой строки.

Примечание редакции: подробнее читайте в статье “Операторы in и not in в Python”.

Упражнение

Попробуйте выполнить следующие упражнения

  1. Выясните, чувствителен ли метод find() к регистру.
  2. Что делать, если строка запроса встречается в строке дважды?
  3. Напишите программу, которая запрашивает ввод с консоли и ищет запрос.

Перевод статьи «String find() in Python».

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *