str.find(sub[, start[, end]])
sub
- str
, подстрока или символ;start
- int
, индекс строки str
для начала поиска;end
- int
, индекс строки str
для конца поиска.int
, индекс первого совпадения.Метод str.find()
возвращает индекс первого совпадения подстроки sub
в строке str
, где подстрока или символ sub
находится в пределах среза str[start:end]
. Другими словами, находит и возвращает индекс первого совпадения подстроки в строке str
.
start
и end
интерпретируются как в нотации среза.-1
, если символ или подстрока sub
не найдены.Что бы найти индекс последнего совпадения подстроки sub
в строке str
воспользуйтесь методом str.rfind()
.
Обратите внимание, что метод str.find()
следует использовать только в том случае, если вам нужно знать положение подстроки sub
в строке. Чтобы проверить, является ли sub
подстрокой строки str
, используйте оператор if ... in
:
Примечание. Найти индексы начала и конца подстроки в строке можно так же при помощи регулярных выражений, используя функцию re.search()
.
>>> if 'Py' in 'Python':
... # что то сделать
>>> x = 'раз два три раз два три раз'
>>> x.find('раз')
# 0
>>> x.find('раз', 10, 23)
# 12
>>> x.find('раз', -12)
# 24
>>> x = 'раз два три раз два три раз'
>>> x.find('четыре')
# -1