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
:
>>> if 'Py' in 'Python': ... # что то сделать
Примечание. Найти индексы начала и конца подстроки в строке можно так же при помощи регулярных выражений, используя функцию re.search()
.
>>> x = 'раз два три раз два три раз' >>> x.find('раз') # 0 >>> x.find('раз', 10, 23) # 12 >>> x.find('раз', -12) # 24 >>> x = 'раз два три раз два три раз' >>> x.find('четыре') # -1