Добавление немного больше к вышеупомянутым ответам.
id
переменной изменяется при переназначении.
>>> a = 'initial_string'
>>> id(a)
139982120425648
>>> a = 'new_string'
>>> id(a)
139982120425776
Это означает, что мы изменили переменную a
, чтобы она указала на новую строку. Сейчас существует два string
(str) объектов:
'initial_string'
с id
= 139982120425648
и
'new_string'
с id
= 139982120425776
Рассмотрим следующий код:
>>> b = 'intitial_string'
>>> id(b)
139982120425648
Теперь b
указывает на 'initial_string'
и имеет те же id
, что и a
до переназначения.
Таким образом, 'intial_string'
не был мутирован.