mirror of
https://github.com/kennethreitz/python-guide.git
synced 2026-06-05 06:46:17 +00:00
Merge pull request #625 from gsenesac/serialization
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