Курс 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. Декодирование байтов в строку
  2. Функции в Python: создание и вызов
  3. Numpy: разбиение массивов
  4. Определение объема памяти объекта
  5. Метод is_absolute() для PurePath
  6. Работа с библиотекой xkcd
  7. Функции map, filter, reduce
  8. Генерация UUID в Python
  9. Оператор continue в Python
  10. Автоматизация с Python
  11. Печать календаря
  12. Логические значения в Python
  13. Игра Виселица на Python
  14. CSV строка разделение в Python
  15. Форматирование объектов с модулем pprint
  16. Подсчет часто встречающихся элементов
  17. Разделение строки в Python
  18. Модуль pprint: улучшение вывода данных
  19. Экспорт данных с помощью writefile
  20. Оптимизация сравнения в Python
  21. Философия Python
  22. Установка и использование модуля Wikipedia
  23. Класс UserDict: дополнительная функциональность
  24. Объединение словарей в Python
  25. Запуск асинхронной корутины
  26. Monkey Patching в Python
  27. Объединение словарей в Python 3.5+
  28. Оператор is в Python
  29. Метод invert для побитового отрицания
  30. Кортеж в Python: создание и использование
  31. Библиотека itertools: объединение списков
  32. Magic Commands — улучшение работы с Python
  33. Оптимизация гиперпараметров с Scikit Optimize
  34. Основы работы с базами данных в Python
  35. Роль ключевого слова self
  36. Работа с enumerate()
  37. Оператор break в Python
  38. Метод join() для объединения строк
  39. Работа с очередями в Python
  40. Извлечение аудио из видео
  41. Pretty-printing JSON в Python
  42. Работа со стеком в Python
  43. Метод count в Python: почему count(», ») возвращает 4?
  44. Конвертация коллекций в Python.
  45. Оптимизация параметров в Python
  46. Измерение времени выполнения кода
  47. Функция reduce() в Python

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