Курс 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"
- Работа с путями в Python
- Работа с датой и временем в Python
- Встраивание HTML в Jupyter Notebook
- Перехват исключений в Python
- Объединение списков в Python
- Фильтрация списка чисел
- Инициализация переменных
- Пересечение списков с использованием множеств
- Python: изменяемые и неизменяемые коллекции
- Декоратор Ajax required
- Синтаксис переменных цикла в Python
- Удаление элементов из списка
- Резервирование символов в Python
- Работа с пользовательским вводом
- Бесконечные списки в Python
- Анализ кода — Python
- Изменение элемента списка
- Атрибуты класса и экземпляра в Python
- Вычисление времени выполнения
- Генерация UUID в Python
- Очистка данных с помощью pandas
- Наследование в программировании
- Срез в Python
- Анализ текста на русском языке с помощью Pymystem3
- Оператор walrus в Python
- Генераторы в Python
- Форматирование строк в Python
- Декораторы в Python
- Копирование объектов в Python
- Метод difference_update() — разность множеств
- Работа с itertools
- Объединение словарей в Python
- Функция reduce() из модуля functools
- Ноутбуки AMD Ryzen ™ 4000: мощность и эффективность
- Контекстный менеджер в Python
- Поиск наиболее частого элемента в списке
- Преобразование списков в словарь
- Работа с контекстным менеджером Pool
- Оператор обр. импликации
- Метод setdefault() в Python
- Блок else в обработке исключений
- Библиотека itertools: объединение списков
- Преобразование числа в восьмеричную строку
- Magic Commands — улучшение работы с Python
- Лямбда-функции в defaultdict
- Перемешивание списка с shuffle()















