Курс 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"
- Использование эмодзи в Python
- Определение имен функций
- Метод сравнения объектов в Python
- Выборка чисел
- Генераторы в Python
- Установка Git и AWS CLI
- Создание коллекций из выражения-генератора
- Метод join() для объединения элементов
- Анонимные функции в Python
- Получение идентификатора объекта в памяти
- Визуализация пропусков данных
- Функции высшего порядка в Python
- Создание списка через цикл
- Изменение списка срезами
- Метод invert для побитового отрицания
- Замена атрибута в именованном кортеже
- Итераторы с потерямиZIP
- Генерация UUID в Python
- Измерение времени выполнения кода
- Условное добавление элементов в список
- Оператор Walrus: правильное использование
- Метод join() для объединения элементов строки
- Поиск индекса элемента
- Функции any() и all() в Python
- Комментарии в Python
- Изменение регистра данных
- Python: отсутствие точек с запятыми
- Форматирование строк с помощью f-строк
- Удаление файлов и папок в Python
- Именование переменных в Python
- Декораторы в Python
- Получение срезов итераторов
- Декораторы с аргументами в Python
- Область видимости переменных
- Фильтрация списка чисел
- Фильтрация последовательности
- Проверка памяти объекта
- Частичное совпадение пользовательского ввода в Python 3.10
- Метод __float__ в Python
- Избегайте пустого списка
- Искажение имен в Python
- Поиск индексов подстроки
- Сравнение строк в Python
- Запуск внешнего кода в Jupyter
- Функция rsplit() в Python
- Комментарии в Python.















