int.to_bytes(length, byteorder, *, signed=False)
Return an array of bytes representing an integer.
>>> (1024).to_bytes(2, byteorder='big') b'\x04\x00' >>> (1024).to_bytes(10, byteorder='big') b'\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00' >>> (-1024).to_bytes(10, byteorder='big', signed=True) b'\xff\xff\xff\xff\xff\xff\xff\xff\xfc\x00' >>> x = 1000 >>> x.to_bytes((x.bit_length() // 8) + 1, byteorder='little') b'\xe8\x03'
The integer is represented using length bytes. An OverflowError
is raised if the integer is not representable with the given number of bytes.
The byteorder argument determines the byte order used to represent the integer. If byteorder is "big"
, the most significant byte is at the beginning of the byte array. If byteorder is "little"
, the most significant byte is at the end of the byte array. To request the native byte order of the host system, use sys.byteorder
as the byte order value.
The signed argument determines whether two’s complement is used to represent the integer. If signed is False
and a negative integer is given, an OverflowError
is raised. The default value for signed is False
.
New in version 3.2.
Please login to continue.