How do I serialize / deserialize a dictionary data
with msgpack?
The Python docs seem not to be so good, so here is my try.
pip install 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", "wb") as outfile:
packed = msgpack.packb(data)
outfile.write(packed)
# Read msgpack file
with open("data.msgpack", "rb") as data_file:
byte_data = data_file.read()
data_loaded = msgpack.unpackb(byte_data)
print(data == data_loaded)
For your application, the following might be important:
See also: Comparison of data serialization formats
In case you are rather looking for a way to make configuration files, you might want to read my short article Configuration files in Python