search

str.rfind

Returns the highest index in the string where substring sub is found within [start:end]. Returns -1 if the substring is not found.

str.rfind(sub[, start[, end]])

Parameters

Parameter Purpose
sub substring to search for
start optional slice start (default 0)
end optional slice end (default len(str))

Examples

>>> 'abcabc'.rfind('b')
4

finds the rightmost occurrence

>>> 'file.tar.gz'.rfind('.')
8

commonly used to split at the last delimiter

>>> 'hello'.rfind('z')
-1

returns -1 when not found

>>> 'aaa'.rfind('a', 0, 2)
1

end index is exclusive, like slicing

Gotcha

Returns -1 on miss (never raises). Consider str.rpartition() when you need the tail slice as well as the position.

Related methods

← All Python string methods · Python built-ins