Junior — Middle
102
Hogyan lehet meghatározni, hogy egy adattípus módosítható vagy immutábilis?
Válasz az MI-től
sobes.tech MI
В Python тип данных считается изменяемым (mutable), если после создания объекта его содержимое можно изменить без создания нового объекта. Если же объект нельзя изменить после создания, он считается неизменяемым (immutable).
Примеры immutable типов: int, float, bool, str, tuple, frozenset.
Примеры mutable типов: list, dict, set, пользовательские объекты с изменяемыми атрибутами.
Чтобы проверить, изменяем ли объект, можно попробовать изменить его содержимое и посмотреть, изменился ли сам объект (например, проверить id объекта до и после изменения):
x = [1, 2, 3]
print(id(x))
x.append(4)
print(id(x)) # id не изменился, значит list изменяемый
s = "hello"
print(id(s))
s += " world"
print(id(s)) # id изменился, значит str неизменяемый
Таким образом, если объект можно изменить без создания нового, он mutable; если при изменении создаётся новый объект — immutable.