circuitpython/docs/library/ustruct.rst

44 lines
1.4 KiB
ReStructuredText
Raw Normal View History

:mod:`ustruct` -- pack and unpack primitive data types
======================================================
.. module:: ustruct
:synopsis: pack and unpack primitive data types
See `Python struct <https://docs.python.org/3/library/struct.html>`_ for more
information.
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 depending
on the floating-point support).
Functions
---------
.. function:: calcsize(fmt)
Return the number of bytes needed to store the given `fmt`.
.. function:: pack(fmt, v1, v2, ...)
Pack the values `v1`, `v2`, ... according to the format string `fmt`.
The return value is a bytes object encoding the values.
.. function:: pack_into(fmt, buffer, offset, v1, v2, ...)
Pack the values `v1`, `v2`, ... according to the format string `fmt`
into a `buffer` starting at `offset`. `offset` may be negative to count
from the end of `buffer`.
.. function:: unpack(fmt, data)
Unpack from the `data` according to the format string `fmt`.
The return value is a tuple of the unpacked values.
.. function:: unpack_from(fmt, data, offset=0)
Unpack from the `data` starting at `offset` according to the format string
`fmt`. `offset` may be negative to count from the end of `buffer`. The return
value is a tuple of the unpacked values.