Python Glossary English

Python 3.2+Числа и математикафункция

int.to_bytes

байты

Сериализует целое в объект bytes заданной длины и порядка байт (byteorder «big»/«little»); signed=True — для отрицательных.

Синтаксис

n.to_bytes(length=1, byteorder='big', *, signed=False)

Длину считаете вы: число, не влезающее в length байт, даёт OverflowError, а не обрезается молча; минимально нужное количество — (n.bit_length() + 7) // 8. Отрицательные значения требуют signed=True, иначе тот же OverflowError о переводе отрицательного в беззнаковое. Значения по умолчанию (length=1, byteorder='big') появились только в Python 3.11 — раньше оба аргумента были обязательными.

Примеры

print((7).to_bytes(2, 'big'))       # → b'\x00\x07'
print((255).to_bytes(1, 'little'))  # → b'\xff'
print((1).to_bytes(2, 'little'))    # → b'\x01\x00'

См. также

Частые ошибки

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