Курс 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. Генерация строк с .join()
  3. Хеширование паролей с солью
  4. Метод bool() в Python
  5. Работа с библиотекой xkcd
  6. Python: отсутствие точек с запятыми
  7. Solidity для DeFi Ethereum
  8. Лямбда-функции в Python
  9. Переменные в Python
  10. Метод __call__ в Python
  11. Flask — веб-фреймворк Python
  12. Форматирование строк в Python.
  13. Функции any() и all() в Python
  14. Передача словаря через **kwargs
  15. Работа с файловой системой в Python
  16. Отладка утечек памяти в Python
  17. Цикл for в Python
  18. Проверка списка: any() и all()
  19. Работа со списками
  20. Именованные аргументы в Python
  21. Встроенные функции Python
  22. Замер времени выполнения кода
  23. Оценка выражений генератора в Python
  24. Обработка исключений в Python
  25. Экспорт функций в Python
  26. Получение списка файлов в директории с использованием os
  27. Сравнение def и lambda функций в Python
  28. Утечки переменных цикла в Python 3.x
  29. Объединение словарей в Python
  30. Регистрация на хакатоне
  31. Модуль math: константы π и e
  32. Структура данных словарь в Python
  33. Работа со строками в Python.
  34. Очистка входных данных
  35. split() — разделение строки
  36. Установка и использование pyshorteners
  37. Метод enumerate() в Python
  38. Enum в Python: создание и использование перечислений
  39. Конструктор в Python
  40. capitalize() — изменение регистра первого символа строки
  41. Участие в LP стейкинге Waves
  42. Работа с модулем os в Python
  43. Передача неизвестных аргументов в Python.
  44. Перевод двоичного кода в целое число
  45. Управление импортом в Python
  46. Работа с исключениями в Python
  47. Использование функции enumerate()

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