Курс 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"

  1. Управление браузером с Selenium
  2. Карта бомбоубежищ в Москве и Питере
  3. Именованные кортежи в Python
  4. Метод clear для коллекций
  5. Асинхронный код в Python
  6. Методы в Python
  7. Работа с изменяемыми списками
  8. Переворот строки
  9. Оператор Walrus: правильное использование
  10. Приоритет операций в Python
  11. Безопасные SQL-запросы в Python 3.11
  12. Работа с комбинациями в Python.
  13. Обмен значений переменных в Python
  14. Циклы в Python
  15. Работа со случайными элементами
  16. Метод Event.wait() в Python
  17. Объединение словарей в Python
  18. Многострочные строки в Python
  19. Метод join() с набором
  20. Делегирование в Python
  21. Модуль Operator в Python
  22. Декораторы с аргументами в Python
  23. Создание словаря и множества
  24. Операторы присваивания в Python
  25. Модуль os: работа с файлами и папками
  26. Colorama: окрашивание текста в Python
  27. Объединение словарей в Python
  28. Python и Монти Пайтон
  29. Переопределение оператора % для объектов
  30. Инверсия списка и строки в Python
  31. Декоратор для группы пользователей в Django
  32. Сортировка элементов с OrderedDict
  33. Хранение данных с помощью dataclasses
  34. Цикл while в Python
  35. Работа со строками в Python
  36. Проверка типов с использованием isinstance
  37. Изменение списка срезами
  38. Частичное совпадение ввода
  39. Обработка ошибок в Python
  40. Python Translator: создание локальных переводчиков
  41. Поиск подстроки в строке
  42. Генераторы списков в Python
  43. Удаление символа из строки
  44. Сравнение def и lambda-функций
  45. discard() — удаление элемента из множества

Marketello читают маркетологи из крутых компаний