Курс Python → Сериализация и десериализация объектов
Модуль pickle в Python предоставляет удобный способ сериализации и десериализации объектов. Сериализация — это процесс преобразования объекта Python в последовательность байтов, которая может быть сохранена или передана через сеть. Десериализация, с другой стороны, — это процесс обратного преобразования последовательности байтов в объект Python.
Основными методами модуля pickle являются pickle.dumps() и pickle.loads(). Метод pickle.dumps() принимает объект Python и возвращает его сериализованное представление в виде строки байтов. Метод pickle.loads(), наоборот, принимает сериализованное представление объекта и возвращает его как объект Python.
Пример использования модуля pickle:
import pickle
# сериализация объекта
data = {'name': 'Alice', 'age': 30}
serialized_data = pickle.dumps(data)
# запись сериализованных данных в файл
with open('data.pickle', 'wb') as file:
file.write(serialized_data)
# десериализация объекта
with open('data.pickle', 'rb') as file:
deserialized_data = pickle.loads(file.read())
print(deserialized_data)
Модуль pickle также поддерживает сериализацию пользовательских классов и функций. Однако, при использовании pickle важно помнить о потенциальных уязвимостях безопасности, связанных с десериализацией ненадежных данных. Поэтому рекомендуется быть осторожным при загрузке данных из ненадежных источников.
Другие уроки курса "Python"
- Отслеживание прогресса с tqdm
- Генераторы в Python
- Делегирование в Python
- Метод rpow в Python
- Использование type hints
- Конструктор в Python
- Работа с пользовательским вводом
- Работа с Enum в Python3.
- Вычисление фазы комплексного числа
- Инверсия списков и строк в Python
- SciPy: широкий функционал для математических операций
- Подписка на @SelectelNews
- Поиск наиболее частого элемента
- Извлечение новостей с помощью newspaper3k
- Обработка исключений
- Безопасные SQL-запросы в Python 3.11
- Экспорт функций в Python
- Расчет времени выполнения
- Операции с числами в Python
- Группировка элементов Python
- Работа с байтовыми строками в Python
- Отрицательные индексы списков
- Порядок операций в Python
- Сглаживание списка
- Декораторы в Python
- Активация Matplotlib в Jupyter
- Проверка файла .py на синтаксис.
- Оценка точности модели
- Применение функции к элементам списка
- Удаление дубликатов из списка с помощью dict.fromkeys
- globals и locals
- Шаблоны и наследование в Flask
- Работа с геоданными с помощью geopy
- Получение ID процесса
- Генерация случайных чисел в Python
- Статическая типизация в Python
- Добавление вложенных списков
- Numpy: использование Ellipsis
- Создание вложенного генератора
- Преобразование чисел в восьмеричную строку
- Создание обратного итератора
- Разница между датами
- Взаимодействие с внешними процессами в Python
- Измерение времени выполнения кода с помощью time
- Генераторы в Python















