Курс 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"
- Генерация случайных данных в NumPy
- Удаление дубликатов из списка
- Обработка ошибок в JSON данных
- Логирование с Loguru
- Использование эмодзи в Python
- Извлечение новостей с помощью newspaper3k
- Выражения-генераторы в Python
- Срезы в Python
- Работа с NumPy массивами
- Математические функции в Python
- Замена элементов в списке с помощью генераторов списков
- Метод __iand__ для пользовательских классов
- Обратный список чисел
- Список методов и атрибутов
- Функция map() и ленивая оценка
- Вложенные генераторы в Python
- Создание уникального множества
- Проверка дублей в списке.
- Поиск наиболее частого элемента в списке
- Работа с типами данных в Python с помощью pydantic.
- Создание итератора
- Основы работы со строками в Python
- Создание новых списков через list comprehensions
- Просмотр атрибутов и методов класса
- Сравнение def и lambda в Python
- Функции с дополнением
- Список импортированных модулей в Python
- Создание виртуальной среды
- Проверка индексов коллекции
- Переворот списка в Python
- Функциональное программирование.
- Создание тестовых данных с Faker
- Фильтрация списка чисел
- Удаление знаков препинания в Python
- Проверка на палиндром
- Приоритет операций в Python
- Создание именованных кортежей в Python
- Модуль inspect: получение информации о объектах
- Генерация тестовых данных с factory_boy
- Глобальные переменные в Python
- Замена символов в Python















