Модуль pickle.
Также для работы с бинарными файлами Python предоставляет специальный встроенный модуль pickle, который упрощает работу с бинарными файлами. Этот модуль предоставляет два метода:
• dump(obj, file): записывает объект obj в бинарный файл file
• load(file): считывает данные из бинарного файла в объект
Допустим, надо надо сохранить значения двух переменных:
🐍 Укус питона // 💬 Чат // #теория #файлы #бинарные
Также для работы с бинарными файлами Python предоставляет специальный встроенный модуль pickle, который упрощает работу с бинарными файлами. Этот модуль предоставляет два метода:
• dump(obj, file): записывает объект obj в бинарный файл file
• load(file): считывает данные из бинарного файла в объект
Допустим, надо надо сохранить значения двух переменных:
🐍 Укус питона // 💬 Чат // #теория #файлы #бинарные
Модуль pickle. Продолжение.
С помощью функции dump последовательно записываются два объекта. Поэтому при чтении файла также последовательно посредством функции load мы можем считать эти объекты. Консольный вывод программы:
В зависимости от того, какой объект мы записывали функцией dump, тот же объект будет возвращен функцией load при считывании файла.
🐍 Укус питона // 💬 Чат // #теория #файлы #бинарные
С помощью функции dump последовательно записываются два объекта. Поэтому при чтении файла также последовательно посредством функции load мы можем считать эти объекты. Консольный вывод программы:
В зависимости от того, какой объект мы записывали функцией dump, тот же объект будет возвращен функцией load при считывании файла.
🐍 Укус питона // 💬 Чат // #теория #файлы #бинарные
Модуль shelve.
Для работы с бинарными файлами в Python может применяться еще один модуль - shelve. Он сохраняет объекты в файл с определенным ключом. Затем по этому ключу может извлечь ранее сохраненный объект из файла. Процесс работы с данными через модуль shelve напоминает работу со словарями, которые также используют ключи для сохранения и извлечения объектов.
Для открытия файла модуль shelve использует функцию open():
Где параметр flag может принимать значения, смотрим в пример:
🐍 Укус питона // 💬 Чат // #теория #файлы #бинарные
Для работы с бинарными файлами в Python может применяться еще один модуль - shelve. Он сохраняет объекты в файл с определенным ключом. Затем по этому ключу может извлечь ранее сохраненный объект из файла. Процесс работы с данными через модуль shelve напоминает работу со словарями, которые также используют ключи для сохранения и извлечения объектов.
Для открытия файла модуль shelve использует функцию open():
Где параметр flag может принимать значения, смотрим в пример:
🐍 Укус питона // 💬 Чат // #теория #файлы #бинарные
Чтение данных.
При чтении данных, если запрашиваемый ключ отсутствует, то генерируется исключение. В этом случае перед получением мы можем проверять на наличие ключа с помощью оператора in:
Также мы можем использовать метод get(). Первый параметр метода - ключ, по которому следует получить значение, а второй - значение по умолчанию, которое возвращается, если ключ не найден.
Используя цикл for, можно перебрать все значения из файла:
🐍 Укус питона // 💬 Чат // #теория #модули #shelve
При чтении данных, если запрашиваемый ключ отсутствует, то генерируется исключение. В этом случае перед получением мы можем проверять на наличие ключа с помощью оператора in:
Также мы можем использовать метод get(). Первый параметр метода - ключ, по которому следует получить значение, а второй - значение по умолчанию, которое возвращается, если ключ не найден.
Используя цикл for, можно перебрать все значения из файла:
🐍 Укус питона // 💬 Чат // #теория #модули #shelve
Удаление данных
Для удаления с одновременным получением можно использовать функцию pop(), в которую передается ключ элемента и значение по умолчанию, если ключ не найден, первый пример:
Также для удаления может применяться оператор del, второй пример:
Для удаления всех элементов можно использовать метод clear(), последний пример:
🐍 Укус питона // 💬 Чат // #теория #модули #shelve
Для удаления с одновременным получением можно использовать функцию pop(), в которую передается ключ элемента и значение по умолчанию, если ключ не найден, первый пример:
Также для удаления может применяться оператор del, второй пример:
Для удаления всех элементов можно использовать метод clear(), последний пример:
🐍 Укус питона // 💬 Чат // #теория #модули #shelve