Данная задача демонстрирует ключевую особенность изменяемых объектов — списков. Рассмотрим код пошагово:
🔘 𝚊 = [𝟸, 𝟺, 𝟼] — создается список с тремя элементами
🔘 𝚋 = 𝚊 — переменная 𝚋 начинает указывать на тот же список, что и 𝚊
🔘 𝚊[𝟶] = 𝟿𝟿 — изменяется первый элемент списка
🔘 𝚙𝚛𝚒𝚗𝚝(𝚋) — выводится список, на который указывает 𝚋
Ключевой момент заключается в том, что и 𝚊, и 𝚋 указывают на один и тот же объект списка в памяти. Когда мы изменяем элемент списка через переменную 𝚊, этот же объект изменяется и для переменной 𝚋.
Любанович Б. «Простой Python», глава 𝟸:
«В случае, когда оба имени указывают на изменяемый объект, вы можете изменить значение объекта с помощью любого имени. [...] Список представляет собой изменяемый массив значений... Эти элементы списка (𝚊[𝟶], 𝚊[𝟷] и 𝚊[𝟸]) сами по себе являются именами, указывающими на целочисленные объекты со значениями 𝟸, 𝟺 и 𝟼. Список хранит элементы в заданном порядке. Когда первый элемент списка изменяется, он больше не указывает на объект со значением 𝟸. Теперь он указывает на объект со значением 𝟿𝟿. Список всё ещё имеет тип 𝚕𝚒𝚜𝚝, но его значения (элементы списка и их порядок) можно изменить».
Post #4392
715
- 👍 6
- 👎 1