Курс 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"
- Структура данных deque в Python
- Построение графиков в Matplotlib
- Работа с collections в Python.
- Установка и использование Virtualenv
- Работа с модулем cmath
- Форматирование строк в Python
- Создание словаря через dict comprehension
- Генератор списка с условием if
- Логирование с Logzero
- Форматирование строк в Python
- Преобразование документов в PDF с помощью Spire.Office
- Метод __ilshift__ для битового сдвига влево
- Методы __repr__ и __str__ в Python
- Отслеживание выполнения программы с библиотекой tqdm
- Лямбда-функции для min/max
- Оператор is в Python
- Списковые включения в Python
- Переопределение метода __or__()
- Генераторы в Python
- Работа с itertools
- Удаление дубликатов из списка с помощью dict.fromkeys
- Генераторные выражения и islice.
- Вакансии в Nebius
- Открытие, чтение и закрытие файла
- Python reversed() vs срез[::-1]
- Инверсия списка и строки в Python
- Хранение данных с помощью dataclasses
- Подсказки типов в Python
- Переворот строки с использованием цикла
- ChainMap.new_child() — добавление нового словаря
- Python Аргументы по умолчанию
- Сортировка элементов с OrderedDict
- Определение объема памяти объекта
- Форматирование строк в Python.
- Анализ кода — Python
- Профилирование кода
- Метод __call__ в Python
- Обновление шаблона base.html
- Преобразование списка в словарь через генератор
- Замена символов в Python
- Работа с очередями в Python
- Виртуальное окружение Python
- Работа с временем в Python
- Работа с файлами в Python
- Декодирование строк в Python
- Хранение данных















