Persistencia de datos
*********************

Los módulos descritos en este capítulo soportan el almacenamiento de
datos de Python de forma persistente en el disco. Los módulos "pickle"
y "marshal" pueden convertir muchos tipos de datos de Python en un
flujo de bytes y luego recrear los objetos a partir de los bytes. Los
diversos módulos relacionados con DBM admiten una familia de formatos
de archivo basados en hash que almacenan un mapeo de cadenas a otras
cadenas.

La lista de módulos descritos en este capítulo es:

* "pickle" --- Serialización de objetos Python

  * Relación con otros módulos de Python

    * Comparación con "marshal"

    * Comparación con "json"

  * Formato de flujo de datos

  * Interfaz del módulo

  * ¿Qué se puede serializar (pickled) y deserializar (unpickled) con
    *pickle*?

  * *Pickling* de Instancias de clases

    * Persistencia de objetos externos

    * Tablas de despacho

    * Manejo de objetos con estado

  * Reducción personalizada para tipos, funciones y otros objetos

  * Búferes fuera de banda

    * API de proveedor

    * API de consumidor

    * Ejemplo

  * Restricción de Globals

  * Performance

  * Ejemplos

* "copyreg" --- Registrar funciones de soporte de "pickle"

  * Ejemplo

* "shelve" --- Persistencia de objetos de Python

  * Restricciones

  * Ejemplo

* "marshal" --- Serialización interna de objetos Python

* "dbm" --- Interfaces para "bases de datos" de Unix

  * "dbm.gnu" --- La reinterpretación de GNU de dbm

  * "dbm.ndbm" --- Interfaz basada en ndbm

  * "dbm.dumb" --- Implementación de DBM portátil

* "sqlite3" --- DB-API 2.0 interfaz para bases de datos SQLite

  * Tutorial

  * Reference

    * Module functions

    * Module constants

    * Connection objects

    * Cursor objects

    * Row objects

    * PrepareProtocol objects

    * Excepciones

    * SQLite y tipos de Python

    * Adaptadores y convertidores por defecto

  * How-to guides

    * How to use placeholders to bind values in SQL queries

    * How to adapt custom Python types to SQLite values

      * How to write adaptable objects

      * How to register adapter callables

    * How to convert SQLite values to custom Python types

    * Adapter and converter recipes

    * How to use connection shortcut methods

    * How to use the connection context manager

    * How to work with SQLite URIs

    * How to create and use row factories

  * Explanation

    * Transaction control
