все Python 3Байтовые последовательностифункция
bytes.rindex
bytes — поиск
Как rfind, но бросает ValueError, если не найдено.
Синтаксис
b.rindex(...)
Берите rindex, когда отсутствие подстроки означает поломку данных: rfind в этом случае вернёт -1, а -1 молча сработает как валидный отрицательный индекс в срезе и даст правдоподобный, но неверный результат. Возвращается позиция от начала последовательности — справа налево идёт только сам поиск. Искать можно bytes-подобный объект или целое 0-255; str на входе даст TypeError.
Примеры
print(b'banana'.rindex(b'na')) # → 4
print(b'banana'.rindex(b'a')) # → 5
path = b'/usr/local/bin'
print(path[path.rindex(b'/') + 1:]) # → b'bin'
print(b'banana'.rindex(b'z')) # → ValueError
print(b'banana'.rfind(b'z')) # → -1
См. также
Частые ошибки
Открыть в полном глоссарииdocs.python.orgСообщить о неточности