Курс 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
- Передача словаря через **kwargs
- Метод join() для объединения строк
- Генерация строк с .join()
- Атрибуты массивов в Numpy
- Многострочные комментарии в Python
- Методы HTTP запросов в Flask
- Функция print() — вывод информации
- Операторы увеличения и уменьшения переменной
- Colorama: окрашивание текста в Python
- Тестирование модели в PyTorch
- Установка Git и AWS CLI
- Создание объекта timedelta
- Команда %dhist — список посещенных каталогов
- Конкатенация строк с join() в Python
- Magic Commands — улучшение работы с Python
- Объединение словарей в Python
- Разделение строки в Python
- Создание обратного итератора
- Преобразование числа в восьмеричную строку
- Итераторы в Python
- Методы в Python
- Управление памятью в numpy.
- Класс UserDict: дополнительная функциональность
- Очистка строки в Python
- Абстракции словарей и множеств в Python
- Форматирование вывода списков
- Нахождение пересечения множеств
- Уникальность ключей в словаре
- Особенности ключей словаря в Python
- Проверка типа данных
- Обработка ошибок ввода данных
- Измерение времени выполнения кода с помощью time
- kwargs в Python
- Логирование с Logzero
- Инверсия списков и строк в Python
- Транспонирование 2D-массива с помощью zip
- Работа с CSV файлами
- Работа со строками в Python
- Сохранение и загрузка модели в PyTorch
- Оператор assert в Python
- Метод rsub в Python: расширение функциональности вычитания















