Курс 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. Определение индекса элемента списка
  3. Combobox в Tkinter
  4. Работа с кортежами
  5. Метод join() для объединения элементов в строку.
  6. Проверка элемента в множестве.
  7. Асинхронный код в Python
  8. Игра «Угадывание чисел»
  9. Использование функции enumerate()
  10. Декоратор total_ordering для класса Point
  11. Чтение и запись TOML-конфигов
  12. Хэш-функции в Python
  13. Использование type hints
  14. Метод rpow в Python
  15. Метод splitlines() для разделения строк
  16. Функции в Python: создание и вызов
  17. Работа с IP-адресами в Python
  18. Тестирование с unittest
  19. Цикл for с enumerate() в Python
  20. Работа с Enum в Python3.
  21. Создание итератора
  22. Передача параметров в Python
  23. Создание генераторов в Python
  24. Monkey Patching в Python
  25. Создание списков в Python
  26. Переименование файлов в Python
  27. Colorama: окрашивание текста в Python
  28. Курс Data Scientist в медицине
  29. Эффективная конкатенация строк в Python
  30. Библиотека sh: использование команд bash в Python
  31. Работа со слайсами
  32. Структуры данных в Python
  33. Управление фоновыми задачами в Python
  34. Принцип одной функции
  35. Цепные операции в Python
  36. Хеши в Python
  37. Python defaultdict добавление ключа
  38. Отладка производительности Python
  39. Python Метод sleep() из time
  40. Переворот списка в Python
  41. Метод gt в Python
  42. Извлечение новостей с newspaper3k
  43. Модуль itertools: комбинации и перестановки
  44. Проверка типа данных
  45. Условное добавление элементов в список
  46. Использование *args
  47. Работа с collections в Python

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