Курс 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. Функция __init__ в Python
  3. Распаковка значений в Python
  4. Объединение словарей в Python
  5. Список переменных с %who
  6. Создание словарей в Python
  7. Добавление элемента к кортежу
  8. Выключение компьютера с помощью Python
  9. Импорт модулей в Python 3.12
  10. Реализация метода __abs__ в Python
  11. Преобразование объекта в строку
  12. Оператор == в Python
  13. Чтение бинарного файла в Python.
  14. Получение ID процесса
  15. Передача аргументов через **arguments
  16. Преобразование генераторов в циклы
  17. Сокращение ссылок с pyshorteners
  18. Обработка ошибок в Python
  19. Заказ карты Тинькофф Black
  20. Подсказки при вводе данных в Python
  21. Измерение времени выполнения кода с помощью time
  22. Работа с очередями в Python
  23. Перемешивание списка с shuffle()
  24. Оператор «is not» в Python
  25. Очистка входных данных
  26. Замена текста с re.sub()
  27. Вывод баннеров
  28. Пропуск начальных строк с помощью dropwhile()
  29. Декораторы в Python
  30. Измерение времени выполнения кода
  31. Декораторы в Python
  32. Ускорение обработки данных с %autoawait
  33. Быстрый поиск кода
  34. Метод __float__ в Python
  35. Роль object и type в Python
  36. Работа с файлами в Python
  37. Функция map() в Python
  38. Изменение элемента списка
  39. Форматирование объектов с модулем pprint
  40. Использование модуля math
  41. Работа с кортежами
  42. Генерация резюме в Gensim
  43. Обработка исключений с блоком else
  44. Работа с кортежами в Python
  45. Поиск подстроки в строке
  46. Повторение элементов списков

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