.. _binaryservices:

********************
Binary Data Services
********************

The modules described in this chapter provide some basic services operations
for manipulation of binary data. Other operations on binary data, specifically
in relation to file formats and network protocols, are described in the
relevant sections.

Some libraries described under :ref:`textservices` also work with either
ASCII-compatible binary formats (for example, :mod:`re`) or all binary data
(for example, :mod:`difflib`).

In addition, see the documentation for Python's built-in binary data types in
:ref:`binaryseq`.

.. toctree::

   struct.rst
   codecs.rst

