Встречается на собеседованиях • сегодня
В чем разница между изменяемыми изменяемыми и неизменяемыми структурами данных
Неизменяемые (immutable) структуры данных нельзя изменить после создания. При попытке изменения создается новый объект. Примеры: int, str, tuple, frozenset.
Изменяемые (mutable) структуры можно изменять после создания без создания нового объекта. Примеры: list, dict, set.
Пример с int (immutable):
python
x = 5
print(id(x)) # 1407085392
x += 1
print(id(x)) # 1407085408 - новый объектПример с list (mutable):
python
lst = [1, 2]
print(id(lst)) # 1402450376
lst.append(3)
print(id(lst)) # 1402450376 - тот же объектКлючевые различия:
- Изменяемые объекты могут быть ключами словаря только если они хешируемы (обычно только неизменяемые)
- Неизменяемые объекты безопаснее в многопоточном коде
- При передаче в функцию изменяемые объекты передаются по ссылке, неизменяемые - по значению

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы