Этот вопрос проверяет знание базовых методов строк и понимание их различий.
В Python первое вхождение символа можно найти с помощью find() или index(). Последнее вхождение ищется методом rfind() или rindex(). Разница в том, что find() возвращает -1, если символ не найден, а index() выбрасывает исключение. Эти методы работают за линейное время.
В Python поиск символа или подстроки реализован встроенными методами строк.
Используется метод:
s = "banana"
pos = s.find("a") # 1
Если символ не найден:
find() вернет -1
index() вызовет ValueError
Пример:
s.index("a")
Используются методы:
s = "banana"
pos = s.rfind("a") # 5
Также есть:
rindex()
Практика:
если отсутствие символа — нормальная ситуация → find()
если отсутствие — ошибка логики → index()
Поиск выполняется:
за O(n)
проходит строку один раз
Вывод
Методы find и rfind — стандартный и безопасный способ поиска позиций символов в строке.