Встречается на 2% собеседований по Python

Зачем нужна сериализация

Сериализация преобразует объекты Python в формат, который можно сохранить (например, в файл) или передать (например, по сети). Обратный процесс — десериализация.

Основные причины использования:

  1. Сохранение состояния — можно записать объект в файл и восстановить позже.
  2. Передача данных — сериализованные объекты можно отправлять между процессами или машинами.
  3. Кеширование — сериализация помогает сохранять результаты вычислений.

Пример с модулем pickle:

python
import pickle

data = {'key': 'value', 'nums': [1, 2, 3]}

# Сериализация
with open('data.pkl', 'wb') as f:
    pickle.dump(data, f)

# Десериализация
with open('data.pkl', 'rb') as f:
    loaded_data = pickle.load(f)

print(loaded_data)  # {'key': 'value', 'nums': [1, 2, 3]}

Альтернативы: JSON (для совместимости), marshal (для .pyc файлов), Protocol Buffers (для эффективности).

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы