Курс 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. Оператор «or» в Python
  4. Метод ipow для возведения в степень
  5. Удаление первого элемента списка
  6. Улучшенные подсказки для импорта в Python 3.12
  7. Преобразование кортежа в словарь.
  8. Преобразование чисел в Python
  9. Переворот строки с помощью срезов
  10. Экспорт данных в файл.
  11. Настройка вывода NumPy
  12. Подсказки при вводе данных в Python
  13. Извлечение чисел из текста
  14. Подсчет вхождений элементов
  15. Проекты на Python
  16. Python: библиотеки и функции
  17. Метод splitlines() для разделения строк
  18. Перетасовка списков в Python
  19. Метод get() для словарей
  20. Использование функции product
  21. Измерение времени выполнения кода
  22. Транспонирование 2D-массива с помощью zip
  23. Функция enumerate() в Python
  24. Роль запятой в Python
  25. Логирование с Logzero
  26. Сложные типы данных в Python
  27. Ускорение обработки данных с %autoawait
  28. Многопоточность в Python
  29. Работа с изображениями PIL
  30. Обработка исключений в Python
  31. Преобразование генераторов в циклы
  32. Форматирование строк в Python
  33. Работа с CSV файлами
  34. Работа с контекстным менеджером Pool
  35. Поиск индекса элемента
  36. Возвращение нескольких значений через кортеж или класс
  37. Удаление элемента по индексу в Python
  38. Numpy: использование Ellipsis
  39. Функции range() в Python
  40. Вывод баннеров
  41. Строки в Python: апострофы и кавычки
  42. Поиск наиболее частого элемента
  43. Декораторы в Python
  44. Конвертация коллекций в Python

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