Курс Python → Сериализация объектов в Python

Модуль pickle в Python предоставляет удобные инструменты для сериализации и десериализации объектов Python. Сериализация — это процесс преобразования объекта в последовательность байтов, которая может быть сохранена в файле или передана по сети. Десериализация — обратный процесс, когда последовательность байтов преобразуется обратно в объект.

В приведенном примере мы создаем объект data в виде словаря и используем функцию pickle.dumps для сериализации этого объекта в байтовую строку. Мы можем сохранить эту строку в файле или передать ее по сети. Затем, используя функцию pickle.loads, мы десериализуем байтовую строку обратно в объект и получаем исходный словарь data.

import pickle

data = {'key': 'value'}
serialized_data = pickle.dumps(data)

# Сохраняем serialized_data в файл или передаем по сети

deserialized_data = pickle.loads(serialized_data)
print(deserialized_data)  # Выведет: {'key': 'value'}

Использование модуля pickle удобно при необходимости сохранить сложные структуры данных Python или передать их между разными процессами. Однако, следует помнить о некоторых ограничениях, например, pickle не поддерживает сериализацию некоторых типов объектов, таких как файлы или сокеты.

При работе с модулем pickle важно обеспечить безопасность данных, так как десериализация объектов из ненадежных источников может привести к выполнению зловредного кода. Рекомендуется использовать pickle только для доверенных данных или обеспечивать проверку целостности данных перед их десериализацией.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Работа с дробями в Python
  2. Вывод символов строки в Python
  3. Декодирование строк в Python
  4. Возврат нескольких значений из функции
  5. Оператор Walrus в Python
  6. Python Менеджер контекста
  7. Разделение строки на подстроки в Python
  8. Подсчет элементов в Python
  9. Логические операторы в Python
  10. Расширение информации об ошибке в Python
  11. Логирование с Logzero
  12. Классы данных в Python
  13. Конвертация изображений в PDF
  14. Отладка производительности Python
  15. Методы работы со строками в Python
  16. Метод rpow в Python
  17. Преобразование числа в восьмеричную строку
  18. Управление доступом к модулю
  19. Форматирование строк в Python
  20. Применение функции к каждому элементу списка
  21. Команда %dhist — список посещенных каталогов
  22. Работа с типами данных в Python с помощью pydantic.
  23. Вычисление логарифмов в Python
  24. Python 3.12: Псевдонимы типов
  25. Вычисление разности множеств в Python
  26. Методы shutil для работы с файлами
  27. Безопасные SQL-запросы в Python 3.11
  28. Оператор деления для класса Rational
  29. Работа с кортежами в Python
  30. Работа с IP-адресами в Python
  31. Замена подстроки
  32. Разделение строки на пары ключ-значение.
  33. Функциональное программирование.
  34. TON Smart Challenge #2: участие и подготовка
  35. Работа с модулем random
  36. Вывод с переменной через запятую
  37. Python Ellipsis использование
  38. Работа с исключениями в Python
  39. Метод __float__ в Python
  40. Создание пустых функций и классов в Python
  41. Загрузка постов Instagram
  42. Анализ кода — Python
  43. Оператор += в Python
  44. Методы работы со списками
  45. Работа с утверждениями в Python
  46. Оператор «or» в Python

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