Встречается на 1% собеседований по Python
Какие знаешь иммутабельные структуры данных
В Python иммутабельными (неизменяемыми) структурами данных являются:
-
Числа (
int,float,complex)pythonx = 5 # нельзя изменить значение 5 -
Строки (
str)pythons = "hello" # s[0] = 'H' # вызовет ошибку
-
Кортежи (
tuple)pythont = (1, 2, 3) # t[0] = 4 # ошибка -
Замороженные множества (
frozenset)pythonfs = frozenset([1, 2, 3]) # fs.add(4) # ошибка -
Байтовые строки (
bytes)pythonb = b'abc' # b[0] = 65 # ошибка
Иммутабельность означает, что после создания объект нельзя изменить. Любая операция, изменяющая объект, создает новый. Например, s += " world" создает новую строку.
Для создания пользовательских иммутабельных классов можно использовать @dataclass(frozen=True) или переопределять __setattr__.

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