Курс 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. Big O оптимизация
  4. Приближение чисел в Python
  5. Поиск шаблона в строке
  6. Хешируемые ключи в Python
  7. Отрицательные индексы списков в Python
  8. Сравнение def и lambda функций в Python
  9. Добавление элемента в список.
  10. Лямбда-функции в цикле
  11. Имена объектов в Python
  12. Названия столбцов в Python таблицах
  13. Замена подстроки
  14. Отладка кода
  15. Проверка строки на палиндром
  16. Реверс строки в Python
  17. Удаление специальных символов
  18. Проверка типов с помощью isinstance
  19. Solidity для DeFi Ethereum
  20. Метод __imod__ для Python
  21. Combobox в Tkinter
  22. Явный импорт переменных
  23. Аннотации типов в Python
  24. Вакансии в Nebius
  25. Нан-рефлексивность в Python
  26. Определение функций с необязательными аргументами
  27. Метод rrshift для пользовательских объектов
  28. Измерение времени выполнения в Python
  29. Функция eval() в Python
  30. Генерация случайных чисел в Python
  31. Особенности запятых в Python
  32. Выражения-генераторы в Python
  33. Метод __float__ в Python
  34. Преобразование Excel в PDF с Spire.XLS
  35. Работа со строками в Python
  36. JSON в Python: модуль, dump, dumps, load
  37. Установка Home Assistant
  38. Добавление кнопки в tkinter
  39. Проверка дубликатов в Python
  40. lru_cache оптимизация функций
  41. Метод get для словарей
  42. Метод pop() списка
  43. Проблема сравнения словарей
  44. Закрытие файла в Python
  45. Измерение времени выполнения кода
  46. Удаление знаков препинания в Python
  47. Замыкания в Python

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