Встречается на собеседованиях • сегодня

Что будет с манипуляцией с неизменяемым объектом

При попытке изменить неизменяемый объект (immutable) в Python, например, строку, кортеж или число, возникнет ошибка. Python не позволяет модифицировать такие объекты после создания. Вместо изменения создается новый объект.

Пример с кортежем:

python
my_tuple = (1, 2, 3)
my_tuple[0] = 5  # TypeError: 'tuple' object does not support item assignment

Однако, если неизменяемый объект содержит изменяемые элементы (например, список внутри кортежа), эти вложенные элементы можно изменять:

python
my_tuple = (1, [2, 3], 4)
my_tuple[1].append(5)  # Работает, так как список изменяем
print(my_tuple)  # (1, [2, 3, 5], 4)

Для строк "изменение" фактически создает новую строку:

python
s = "hello"
s += " world"  # Создается новая строка, оригинальная остается
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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