Курс Python → Сериализация и десериализация объектов
Модуль pickle в Python предоставляет удобный способ сериализации и десериализации объектов. Сериализация — это процесс преобразования объекта Python в последовательность байтов, которая может быть сохранена или передана через сеть. Десериализация, с другой стороны, — это процесс обратного преобразования последовательности байтов в объект Python.
Основными методами модуля pickle являются pickle.dumps() и pickle.loads(). Метод pickle.dumps() принимает объект Python и возвращает его сериализованное представление в виде строки байтов. Метод pickle.loads(), наоборот, принимает сериализованное представление объекта и возвращает его как объект Python.
Пример использования модуля pickle:
import pickle
# сериализация объекта
data = {'name': 'Alice', 'age': 30}
serialized_data = pickle.dumps(data)
# запись сериализованных данных в файл
with open('data.pickle', 'wb') as file:
file.write(serialized_data)
# десериализация объекта
with open('data.pickle', 'rb') as file:
deserialized_data = pickle.loads(file.read())
print(deserialized_data)
Модуль pickle также поддерживает сериализацию пользовательских классов и функций. Однако, при использовании pickle важно помнить о потенциальных уязвимостях безопасности, связанных с десериализацией ненадежных данных. Поэтому рекомендуется быть осторожным при загрузке данных из ненадежных источников.
Другие уроки курса "Python"
- Работа с массивами в Python
- Секреты Python
- Установка переменной среды в Python
- Метод title() в Python
- Генераторы в Python
- Утечки переменных цикла в Python 3.x
- Логирование в Python
- Создание директории в Python
- Конкатенация строк в Python
- Транспонирование матрицы
- Анонимные функции в Python
- CSV строка разделение в Python
- Основы работы с базами данных в Python
- Фильтрация данных в Python.
- Многоточие в Python
- Конкатенация строковых литералов
- Создание списка через цикл
- Модуль functools в Python
- Метод rmatmul для обратного матричного умножения
- Введение в PyTorch
- Распаковка аргументов в Python
- Ноутбуки AMD Ryzen ™ 4000: мощность и эффективность
- Удаление элементов во время итерации
- Проверка списка: any() и all()
- Решение переменной Шредингера
- Работа с модулем os в Python
- Создание словарей и множеств в Python.
- Преобразование списка в словарь через генератор
- Подсчет элементов в Python
- Округление чисел с помощью round
- Операторы Splat и splatty-splat
- Работа с кортежами в Python
- Группировка элементов Python
- Потоковый ввод в Python
- Преобразование чисел в Python
- JSON-esque в Python
- Замена подстроки
- Повторение и перенос строки
- Порядок и длина множеств в Python
- Удаление элементов из списка в Python
- Преобразование вложенного списка
- Структура данных deque в Python
- Python: библиотеки и функции
- Объединение коллекций в Python
- Сохранение Unicode в JSON
- Оптимизация параметров в Python















