все Python 3Байтовые последовательностифункция
bytearray.find
bytearray — поиск
Индекс первого вхождения подпоследовательности или -1.
Синтаксис
ba.find(...)
Возвращает -1, а не исключение, и -1 — совершенно валидный индекс: ba[ba.find(b'x')] молча отдаст последний байт, если ничего не найдено. Когда нужен только ответ «есть или нет», пиши b'na' in ba; find бери, когда важна именно позиция. Аргументы start и end лишь сужают окно поиска — индекс всё равно отсчитывается от начала bytearray.
Примеры
print(bytearray(b'banana').find(b'na')) # → 2
print(bytearray(b'banana').find(b'na', 3)) # → 4
ba = bytearray(b'key: value'); print(ba[ba.find(b':') + 2:].decode()) # → value
print(bytearray(b'banana').find(b'z')) # → -1
print(bytearray(b'banana').index(b'z')) # → ValueError
См. также
Частые ошибки
Открыть в полном глоссарииdocs.python.orgСообщить о неточности