【发布时间】:2019-10-08 22:34:54
【问题描述】:
我知道python中的“变量赋值”实际上是将名称(变量)绑定/重新绑定到对象。
b = [1,2,3]
a = b[2] # binding a to b[2] ?
a = 1000
b 是[1, 2, 3]
这个变化之后,为什么b没有变化?
这是另一个例子:
b = [1,2,3]
a = b
a[0] = 1000
这个案例b是[1000, 2, 3]
在 Python 引用绑定中不是赋值吗?
谢谢
【问题讨论】:
-
1,2,3是 constance 不能更改值,但列出它的一个对象,然后当您将b分配给ab 时,您正在创建对 b 的引用,称为a换句话说与指向的指针相同,如果您对一个引用“内存”进行突变,则 a 与 b 相同
标签: python