The pickle module implements an algorithm for turning an arbitrary
Python object into a series of bytes (“serializing” the object). The
byte stream can then be transmitted or stored, and later reconstructed
to create a new object with the same characteristics.
The cPickle module implements the same algorithm, in C instead of
Python. It is many times faster than the Python implementation, but does
not allow the user to subclass from Pickle. If sub-classing is not
important for your use, you probably want to use cPickle.