Курс 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. Освобождение памяти в Python
  2. Комментарии в Python
  3. Делегирование в Python
  4. Срез списка в Python
  5. Встраивание HTML в Jupyter Notebook
  6. Форматирование строк в Python.
  7. Игра Виселица на Python
  8. Работа с изменяемыми коллекциями
  9. Метод join() для объединения строк
  10. Инверсия списка и строки в Python
  11. Defaultdict в Python
  12. Оптимизация интернирования строк
  13. Операции с комплексными числами
  14. Получение имени функции с помощью inspect
  15. Функции min(), max(), sum()
  16. Проверка индексов коллекции
  17. Работа с кортежами в Python
  18. Python: Фильтрация списков с помощью filter()
  19. Функция enumerate() в Python
  20. Утечки переменных цикла в Python 3.x
  21. Принципы программирования
  22. Установка и использование Python-dateutil
  23. Метод округления чисел
  24. Работа с очередями в Python
  25. Печать списка с помощью метода join
  26. Создание копии списка в Python
  27. Условное добавление элементов в список
  28. Передача параметров в Python
  29. Команда %dhist — список посещенных каталогов
  30. Работа с процессами в Python
  31. Вывод переменной и строки в Python
  32. Статическая типизация в Python
  33. Пустой оператор pass в Python
  34. Преобразование документов в PDF с помощью Spire.Office
  35. Оператор @ для умножения матриц
  36. Метод rpow в Python
  37. Добавление кнопки в tkinter
  38. Печать календаря
  39. Поиск email
  40. Логирование с Logzero: ротация файла
  41. Конкатенация строк с методом join()
  42. Сортировка с помощью параметра key

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