Курс 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. Возврат нескольких значений
  2. Оператор walrus в Python
  3. Декораторы в Python
  4. Отладка кода
  5. Методы __repr__ и __str__ в Python
  6. Иерархия классов в Python
  7. Преобразование документов в PDF с помощью Spire.Office
  8. Отправка POST-запроса в REST API
  9. Создание и удаление объектов
  10. Работа со строками в Python
  11. Разделение строки на пары ключ-значение.
  12. Отправка поздравлений по дню рождения
  13. Подписка на каналы разработчиков
  14. Форматирование данных с помощью pprint
  15. Работа с множествами в Python
  16. Функция zip() в Python
  17. Бинарный поиск
  18. Лимиты на ресурсы Python
  19. Python itertools combinations() — группировка элементов
  20. Flask — веб-фреймворк Python
  21. Оптимизация методов в Python 3.7
  22. Работа с исключениями в Python
  23. Работа с контекстным менеджером Pool
  24. Проверка на истинность объектов в Python
  25. Кортеж в Python: создание, доступ, изменение
  26. Работа с комбинациями в Python.
  27. Печать месячного календаря
  28. Определение наиболее частого элемента с помощью collections.Counter
  29. Функция all() в Python
  30. Безопасный доступ к значениям словаря
  31. Обновление данных через PUT запрос
  32. Бесконечная проверка в Python
  33. Распаковка элементов массива
  34. Нарезка списков в Python
  35. Создание копии итератора
  36. Игра Виселица на Python
  37. Python-dateutil — работа с датами
  38. Замена текста с помощью sub
  39. Создание namedtuple из словаря
  40. Функция product() в Python
  41. Функция divmod() в Python
  42. Счетчик ссылок в Python
  43. Деление в Python
  44. Создание класса очереди

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