Python Glossary English

все Python 3Байтовые последовательностифункция

bytes.splitlines

bytes — разбиение и соединение

Разбивает байты по границам строк.

Синтаксис

b.splitlines(...)

Главное отличие от b.split(b'\n') — разделителями считаются \n, \r и пара \r\n целиком, и завершающий перевод строки не порождает лишний пустой элемент в конце. У пустых байтов результат — пустой список, а не список из одного пустого элемента, так что счётчик строк по файлу с ним не соврёт. Других границ у байтов нет: str.splitlines делит текст ещё и по \v, \f, \x1c–\x1e и юникодным разделителям, а bytes оставит их внутри строки.

Примеры

print(b'a\nb'.splitlines())   # → [b'a', b'b']
print(b'a\nb'.splitlines(keepends=True))   # → [b'a\n', b'b']
print(b'a\r\nb'.splitlines())   # → [b'a', b'b']
print(b'a\nb\n'.splitlines())   # → [b'a', b'b']
print(b'a\nb\n'.split(b'\n'))   # → [b'a', b'b', b'']
print(b''.splitlines())   # → []

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности