Почему обновление переменных в Python работает по-другому [дубликат]Python

Программы на Python
Ответить
Anonymous
 Почему обновление переменных в Python работает по-другому [дубликат]

Сообщение Anonymous »

Я не понимаю, как работает обновление переменных в Python. В коде ниже:

Код: Выделить всё

x = 1.5
y = x
y += 1
print(f"x = {x}, y = {y}")
Он печатает x = 1,5, y = 2,5, как и ожидалось. Но когда я использую списки вместо чисел:

Код: Выделить всё

x = [1,2.5]
y = x
y += [-3]
print(f"x = {x}, y = {y}")
Он печатает x = [1, 2.5, -3], y = [1, 2.5, -3], что кажется нелогичным. Почему обновление переменной работает по-разному для списков и чисел? Почему меняется значение x? Что произойдет с объектами Python?

Подробнее здесь: https://stackoverflow.com/questions/792 ... -in-python
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»