Packing a simple dictionary into a string - extending struct?

Paddy paddy3118 at googlemail.com
Wed Jun 20 21:44:42 CEST 2007


On Jun 20, 12:19 pm, "Jonathan Fine" <J.F... at open.ac.uk> wrote:
> Hello
>
> I want to serialise a dictionary, whose keys and values are ordinary strings
> (i.e. a sequence of bytes).
>
> I can of course use pickle, but it has two big faults for me.
> 1.  It should not be used with untrusted data.
> 2.  I want non-Python programs to be able to read and write these
> dictionaries.
>
> I don't want to use XML because:
> 1.  It is verbose.
> 2.  It forces other applications to load an XML parser.
>
> I've written, in about 80 lines, Python code that will pack and unpack (to
> use the language of the struct module) such a dictionary.  And then I
> thought I might be reinventing the wheel.  But so far I've not found
> anything much like this out there.  (The closest is work related to 'binary
> XML' -http://en.wikipedia.org/wiki/Binary_XML.)
>
> So, what I'm looking for is something like and extension of struct that
> allows dictionaries to be stored.  Does anyone know of any related work?
>
> --
> Jonathan Fine

You could use YAML or KSON then compress the output if size is an
issue.

- Paddy.




More information about the Python-list mailing list