Курс 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. Генерация случайных данных в NumPy
  2. Удаление дубликатов из списка
  3. Обработка ошибок в JSON данных
  4. Логирование с Loguru
  5. Использование эмодзи в Python
  6. Извлечение новостей с помощью newspaper3k
  7. Выражения-генераторы в Python
  8. Срезы в Python
  9. Работа с NumPy массивами
  10. Математические функции в Python
  11. Замена элементов в списке с помощью генераторов списков
  12. Метод __iand__ для пользовательских классов
  13. Обратный список чисел
  14. Список методов и атрибутов
  15. Функция map() и ленивая оценка
  16. Вложенные генераторы в Python
  17. Создание уникального множества
  18. Проверка дублей в списке.
  19. Поиск наиболее частого элемента в списке
  20. Работа с типами данных в Python с помощью pydantic.
  21. Создание итератора
  22. Основы работы со строками в Python
  23. Создание новых списков через list comprehensions
  24. Просмотр атрибутов и методов класса
  25. Сравнение def и lambda в Python
  26. Функции с дополнением
  27. Список импортированных модулей в Python
  28. Создание виртуальной среды
  29. Проверка индексов коллекции
  30. Переворот списка в Python
  31. Функциональное программирование.
  32. Создание тестовых данных с Faker
  33. Фильтрация списка чисел
  34. Удаление знаков препинания в Python
  35. Проверка на палиндром
  36. Приоритет операций в Python
  37. Создание именованных кортежей в Python
  38. Модуль inspect: получение информации о объектах
  39. Генерация тестовых данных с factory_boy
  40. Глобальные переменные в Python
  41. Замена символов в Python

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