[Python-ideas] Ideas for improving the struct module

Rhodri James rhodri at kynesim.co.uk
Thu Jan 19 06:58:04 EST 2017


On 19/01/17 08:31, Mark Dickinson wrote:
> On Thu, Jan 19, 2017 at 1:27 AM, Steven D'Aprano <steve at pearwood.info> wrote:
>> [...] struct already supports
>> variable-width formats.
>
> Unfortunately, that's not really true: the Pascal strings it supports
> are in some sense variable length, but are stored in a fixed-width
> field. The internals of the struct module rely on each field starting
> at a fixed offset, computable directly from the format string. I don't
> think variable-length fields would be a good fit for the current
> design of the struct module.
>
> For the OPs use-case, I'd suggest a library that sits on top of the
> struct module, rather than an expansion to the struct module itself.

Unfortunately as the OP explained, this makes the struct module a poor 
fit for protocol decoding, even as a base layer for something.  It's one 
of the things I use python for quite frequently, and I always end up 
rolling my own and discarding struct entirely.

-- 
Rhodri James *-* Kynesim Ltd


More information about the Python-ideas mailing list