python msgpack

python - ¿Cómo leo y escribo con msgpack?



(1)

¿Cómo serializo / deserializo los data un diccionario con msgpack ?


Los documentos de Python no parecen ser tan buenos, así que aquí está mi intento.

Instalación

pip install msgpack

Leer y escribir msgpack

#!/usr/bin/env python # -*- coding: utf-8 -*- import msgpack # Define data data = {''a list'': [1, 42, 3.141, 1337, ''help''], ''a string'': ''bla'', ''another dict'': {''foo'': ''bar'', ''key'': ''value'', ''the answer'': 42}} # Write msgpack file with open(''data.msgpack'', ''w'') as outfile: msgpack.pack(data, outfile) # Read msgpack file with open(''data.msgpack'') as data_file: # data_loaded = json.load(data_file) data_loaded = msgpack.unpack(data_file) print(data == data_loaded)

Alternativas

  • CSV: formato súper simple ( lectura y escritura )
  • JSON: Agradable para escribir datos legibles por humanos; MUY comúnmente utilizado ( leer y escribir )
  • YAML: YAML es un superconjunto de JSON, pero más fácil de leer ( leer y escribir , comparación de JSON y YAML )
  • pickle: un formato de serialización de Python ( lectura y escritura )
  • msgpack ( paquete Python ): representación más compacta ( lectura y escritura )
  • HDF5 ( paquete Python ): agradable para matrices ( lectura y escritura )
  • XML: existe también * suspiro * ( read y write )

Para su aplicación, lo siguiente puede ser importante:

  • Soporte por otros lenguajes de programación.
  • Rendimiento de lectura / escritura
  • Compacidad (tamaño del archivo)

Ver también: Comparación de formatos de serialización de datos.

En caso de que esté buscando una forma de crear archivos de configuración, puede leer mi breve artículo Archivos de configuración en Python