В Python переменные являются ссылками на объекты в памяти. Когда мы выполняем присваивание 𝚋 = 𝚊, переменная 𝚋 начинает ссылаться на тот же объект, что и переменная 𝚊.
Последовательность выполнения:
🔘 𝚊 = 𝚃𝚛𝚞𝚎 — переменная 𝚊 ссылается на объект 𝚃𝚛𝚞𝚎
🔘 𝚋 = 𝚊 — переменная 𝚋 также начинает ссылаться на объект 𝚃𝚛𝚞𝚎
🔘 𝚊 = 𝙵𝚊𝚕𝚜𝚎 — переменная 𝚊 теперь ссылается на объект 𝙵𝚊𝚕𝚜𝚎, но переменная 𝚋 по−прежнему ссылается на объект 𝚃𝚛𝚞𝚎
🔘 𝚙𝚛𝚒𝚗𝚝(𝚋) — выводит значение объекта, на который ссылается переменная 𝚋, то есть 𝚃𝚛𝚞𝚎
Из документации:
«Операторы присваивания используются для (повторного) связывания имен со значениями и для изменения атрибутов или элементов изменяемых объектов»
При присваивании происходит связывание имени с объектом, а не копирование значения. Поэтому изменение значения одной переменной не влияет на другие переменные, которые ссылаются на тот же объект.
Post #4377
758
- 👍 4
- 👎 1