Перейти к содержимому
1 / 15

Изменяемые и неизменяемые типы (mutable/immutable) в Python: list/dict против tuple/str/int — и как это влияет на аргументы функций по умолчанию?

В Python типы делятся на mutable (list, dict, set, bytearray) и immutable (int, float, str, tuple, frozenset, bytes). Mutable можно изменять in-place — это меняет содержимое того же объекта. Immutable создают новый объект при каждой операции. Главная ловушка: default-аргументы вычисляются один раз при определении функции, поэтому mutable default разделяется между всеми вызовами.

Изменяемые и неизменяемые типы (mutable/immutable) в Python: list/dict против tuple/str/int — и как это влияет на аргументы функций по умолчанию? | JScriptiser