[имя] спросил: Что такое mutable vs immutable типы в Python? Приведи примеры.

Mutable-объекты можно изменять на месте: list, dict, set. Immutable-объекты не меняют своё значение после создания: int, str, tuple, frozenset. Переприсваивание переменной не означает изменение объекта.

Короткий ответ

Что ответить на собеседовании

Mutable-объекты можно изменять на месте: list, dict, set. Immutable-объекты не меняют своё значение после создания: int, str, tuple, frozenset. Переприсваивание переменной не означает изменение объекта.

Подробный разбор

Ответ с пояснениями

Mutable-объекты можно изменять на месте: list, dict, set. Immutable-объекты не меняют своё значение после создания: int, str, tuple, frozenset. Переприсваивание переменной не означает изменение объекта.

Пример: items.append(1) меняет список, тогда как text += "!" для строки создаёт новое строковое значение и связывает с ним переменную. Неизменяемость контейнера не гарантирует неизменяемость вложенных объектов: список внутри кортежа можно менять. Это важно для общих ссылок, копирования и аргументов функций. Хешируемость — отдельное свойство: кортеж с вложенным списком не подходит в качестве ключа словаря.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее