The modules described in this chapter support storing Python data in a persistent form on disk. The pickle and marshal modules can turn many Python data types into a stream of bytes and then recreate the objects from the bytes. The various DBM-related modules support a family of hash-based file formats that store a mapping of strings to other strings. The bsddb module also provides such disk-based string-to-string mappings based on hashing, and also supports B-Tree and record-based formats.
The list of modules described in this chapter is:
| pickle | Convert Python objects to streams of bytes and back. | |
| cPickle | Faster version of pickle, but not subclassable. | |
| copy_reg | Register pickle support functions. | |
| shelve | Python object persistence. | |
| marshal | Convert Python objects to streams of bytes and back (with different constraints). | |
| anydbm | Generic interface to DBM-style database modules. | |
| whichdb | Guess which DBM-style module created a given database. | |
| dbm | The standard ``database'' interface, based on ndbm. | |
| gdbm | GNU's reinterpretation of dbm. | |
| dbhash | DBM-style interface to the BSD database library. | |
| bsddb | Interface to Berkeley DB database library | |
| dumbdbm | Portable implementation of the simple DBM interface. | |
| sqlite3 | A DB-API 2.0 implementation using SQLite 3.x. |