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.