mirror of
https://github.com/kennethreitz/python-guide.git
synced 2026-06-05 23:00:18 +00:00
Added serialization.rst file to scenarios.
This commit is contained in:
@@ -0,0 +1,40 @@
|
|||||||
|
==================
|
||||||
|
Data Serialization
|
||||||
|
==================
|
||||||
|
|
||||||
|
What is data serialization?
|
||||||
|
---------------------------
|
||||||
|
|
||||||
|
Data serialization is the concept of converting structured data into a format
|
||||||
|
that allows it to be shared or stored in such a way that its original
|
||||||
|
structure to be recovered. In some cases, the secondary intention of data
|
||||||
|
serialization is to minimize the size of the serialized data which then
|
||||||
|
minimizes disk space or bandwidth requirements.
|
||||||
|
|
||||||
|
Pickle
|
||||||
|
------
|
||||||
|
|
||||||
|
The native data serialization module for Python is called `Pickle
|
||||||
|
<https://docs.python.org/2/library/pickle.html>`_.
|
||||||
|
|
||||||
|
Here's an example:
|
||||||
|
|
||||||
|
.. code-block:: python
|
||||||
|
|
||||||
|
import pickle
|
||||||
|
|
||||||
|
#Here's an example dict
|
||||||
|
grades = { 'Alice': 89, 'Bob': 72, 'Charles': 87 }
|
||||||
|
|
||||||
|
#Use dumps to convert the object to a serialized string
|
||||||
|
serial_grades = pickle.dumps( grades )
|
||||||
|
|
||||||
|
#Use loads to de-serialize an object
|
||||||
|
received_grades = pickle.loads( serial_grades )
|
||||||
|
|
||||||
|
Protobuf
|
||||||
|
--------
|
||||||
|
|
||||||
|
If you're looking for a serialization module that has support in multiple
|
||||||
|
languages, Google's `Protobuf
|
||||||
|
<https://developers.google.com/protocol-buffers>`_ library is an option.
|
||||||
Reference in New Issue
Block a user