В Python изменяемость описывает, можно ли изменить значение объекта после его создания.
Неизменяемые объекты нельзя изменять после создания. Любая операция, которая кажется изменением значения, на самом деле создаёт новый объект в памяти.
Распространённые примеры: int, float, str, tuple, frozenset, bytes
x = "hello"
x += " world" # Создает новый объект строки, не модифицирует оригинал
Изменяемые объекты можно изменять на месте после создания, без создания нового объекта.
Распространённые примеры: list, dict, set, bytearray
my_list = [1, 2, 3]
my_list.append(4) # Модифицирует оригинальный объект напрямую
def modify(data):
data.append(99)
items = [1, 2, 3]
modify(items)
print(items) # [1, 2, 3, 99] — оригинальный список был изменен
Строки в Python неизменяемы, это означает, что операции типа конкатенации с помощью += создают новый объект строки вместо того, чтобы модифицировать исходную строку в памяти.
Новый — ещё не проверен сообществом
Вы