Документация Python неофициальный перевод

persistence.md

79 строк · 8.2 КБ · обычная страница · сырой текст · скачать

1> **Источник:** https://python-all.ru/3.10/library/persistence.html2>3> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.45---67# Персистентность данных89Модули, описанные в этой главе, поддерживают сохранение данных Python на диск в персистентной форме. Модули [`pickle`](https://python-all.ru/3.10/library/pickle.html#module-pickle) и [`marshal`](https://python-all.ru/3.10/library/marshal.html#module-marshal) могут преобразовывать многие типы данных Python в поток байтов, а затем восстанавливать объекты из байтов. Различные модули, связанные с DBM, поддерживают семейство хеш-форматов файлов, которые хранят отображение строк на другие строки.1011Список модулей, описанных в этой главе:1213- [`pickle` – Сериализация объектов Python](https://python-all.ru/3.10/library/pickle.html)1415  - [Связь с другими модулями Python](https://python-all.ru/3.10/library/pickle.html#relationship-to-other-python-modules)1617    - [Сравнение с `marshal`](https://python-all.ru/3.10/library/pickle.html#comparison-with-marshal)18    - [Сравнение с `json`](https://python-all.ru/3.10/library/pickle.html#comparison-with-json)19  - [Формат потока данных](https://python-all.ru/3.10/library/pickle.html#data-stream-format)20  - [Интерфейс модуля](https://python-all.ru/3.10/library/pickle.html#module-interface)21  - [Что можно сериализовать и десериализовать?](https://python-all.ru/3.10/library/pickle.html#what-can-be-pickled-and-unpickled)22  - [Сериализация экземпляров классов](https://python-all.ru/3.10/library/pickle.html#pickling-class-instances)2324    - [Сохранение внешних объектов](https://python-all.ru/3.10/library/pickle.html#persistence-of-external-objects)25    - [Диспетчерские таблицы](https://python-all.ru/3.10/library/pickle.html#dispatch-tables)26    - [Обработка объектов с состоянием](https://python-all.ru/3.10/library/pickle.html#handling-stateful-objects)27  - [Пользовательская редукция для типов, функций и других объектов](https://python-all.ru/3.10/library/pickle.html#custom-reduction-for-types-functions-and-other-objects)28  - [Внеполосные буферы](https://python-all.ru/3.10/library/pickle.html#out-of-band-buffers)2930    - [API провайдера](https://python-all.ru/3.10/library/pickle.html#provider-api)31    - [API потребителя](https://python-all.ru/3.10/library/pickle.html#consumer-api)32    - [Пример](https://python-all.ru/3.10/library/pickle.html#example)33  - [Ограничение глобальных переменных](https://python-all.ru/3.10/library/pickle.html#restricting-globals)34  - [Производительность](https://python-all.ru/3.10/library/pickle.html#performance)35  - [Примеры](https://python-all.ru/3.10/library/pickle.html#examples)36- [`copyreg` – Регистрация вспомогательных функций `pickle`](https://python-all.ru/3.10/library/copyreg.html)3738  - [Пример](https://python-all.ru/3.10/library/copyreg.html#example)39- [`shelve` – Персистентность объектов Python](https://python-all.ru/3.10/library/shelve.html)4041  - [Ограничения](https://python-all.ru/3.10/library/shelve.html#restrictions)42  - [Пример](https://python-all.ru/3.10/library/shelve.html#example)43- [`marshal` – Внутренняя сериализация объектов Python](https://python-all.ru/3.10/library/marshal.html)44- [`dbm` – Интерфейсы к Unix-«базам данных»](https://python-all.ru/3.10/library/dbm.html)4546  - [`dbm.gnu` – переосмысление dbm от GNU](https://python-all.ru/3.10/library/dbm.html#module-dbm.gnu)47  - [`dbm.ndbm` – интерфейс на основе ndbm](https://python-all.ru/3.10/library/dbm.html#module-dbm.ndbm)48  - [`dbm.dumb` – Переносимая реализация DBM](https://python-all.ru/3.10/library/dbm.html#module-dbm.dumb)49- [`sqlite3` – Интерфейс DB-API 2.0 для баз данных SQLite](https://python-all.ru/3.10/library/sqlite3.html)5051  - [Учебное пособие](https://python-all.ru/3.10/library/sqlite3.html#tutorial)52  - [Справочник](https://python-all.ru/3.10/library/sqlite3.html#reference)5354    - [Функции модуля](https://python-all.ru/3.10/library/sqlite3.html#module-functions)55    - [Константы модуля](https://python-all.ru/3.10/library/sqlite3.html#module-constants)56    - [Объекты соединения](https://python-all.ru/3.10/library/sqlite3.html#connection-objects)57    - [Объекты курсора](https://python-all.ru/3.10/library/sqlite3.html#cursor-objects)58    - [Объекты строки](https://python-all.ru/3.10/library/sqlite3.html#row-objects)59    - [Объекты PrepareProtocol](https://python-all.ru/3.10/library/sqlite3.html#prepareprotocol-objects)60    - [Исключения](https://python-all.ru/3.10/library/sqlite3.html#exceptions)61    - [Типы SQLite и Python](https://python-all.ru/3.10/library/sqlite3.html#sqlite-and-python-types)62    - [Адаптеры и преобразователи по умолчанию](https://python-all.ru/3.10/library/sqlite3.html#default-adapters-and-converters)63  - [Инструкции](https://python-all.ru/3.10/library/sqlite3.html#how-to-guides)6465    - [Как использовать заполнители для привязки значений в SQL-запросах](https://python-all.ru/3.10/library/sqlite3.html#how-to-use-placeholders-to-bind-values-in-sql-queries)66    - [Как адаптировать пользовательские типы Python к значениям SQLite](https://python-all.ru/3.10/library/sqlite3.html#how-to-adapt-custom-python-types-to-sqlite-values)6768      - [Как создавать адаптируемые объекты](https://python-all.ru/3.10/library/sqlite3.html#how-to-write-adaptable-objects)69      - [Как регистрировать адаптеры-вызываемые объекты](https://python-all.ru/3.10/library/sqlite3.html#how-to-register-adapter-callables)70    - [Как преобразовывать значения SQLite в пользовательские типы Python](https://python-all.ru/3.10/library/sqlite3.html#how-to-convert-sqlite-values-to-custom-python-types)71    - [Рецепты адаптеров и преобразователей](https://python-all.ru/3.10/library/sqlite3.html#adapter-and-converter-recipes)72    - [Как использовать сокращённые методы соединения](https://python-all.ru/3.10/library/sqlite3.html#how-to-use-connection-shortcut-methods)73    - [Как использовать контекстный менеджер соединения](https://python-all.ru/3.10/library/sqlite3.html#how-to-use-the-connection-context-manager)74    - [Как работать с URI SQLite](https://python-all.ru/3.10/library/sqlite3.html#how-to-work-with-sqlite-uris)75    - [Как создавать и использовать фабрики строк](https://python-all.ru/3.10/library/sqlite3.html#how-to-create-and-use-row-factories)76  - [Пояснения](https://python-all.ru/3.10/library/sqlite3.html#explanation)7778    - [Управление транзакциями](https://python-all.ru/3.10/library/sqlite3.html#transaction-control)79