ustruct-Packing and unpacking primitive data types
This module implements a subset of the corresponding CPython module, as described below. For more information, please refer to the original CPython documentation: struct.
Supported size/byte order prefixes: @, <, >, !.
Supported format codes: b, B, h, H, i, I, l, L, q, Q, s, P, f, d (the latter 2 depends on floating point support).
Function
calcsize
ustruct.calcsize(fmt)
Returns the number of bytes required to store the given fmt.
pack
ustruct.pack(fmt, v1, v2, ...)
Pack the values v1, v2, ... according to the format string fmt. The return value is a bytes object of the encoded value.
pack_into
ustruct.pack_into(fmt, buffer, offset, v1, v2, ...)
According to the format string fmt, the values v1, v2, ... are packed into a buffer starting from offset. Counting from the end of the buffer may be negative.
unpack
ustruct.unpack(fmt, data)
Unpack from data according to the format string fmt. The return value is a tuple of decompressed values.
unpack_from
ustruct.unpack_from(fmt, data, offset=0)
According to the format string fmt starts from offset and unpacks from data. offset may be a negative number, counting from the end of the buffer. The return value is a tuple of decompressed values.