变量名是标签

>>> a = [1,2,3]
>>> b = []
>>> b.append(a)
>>> b
[[1, 2, 3]]
>>> a = []
>>> b
[[1, 2, 3]] # a重新赋值后b没有改变
>>> 
>>> 
>>> c = [1,2,3]
>>> d = []
>>> d.append(c)
>>> d
[[1, 2, 3]]
>>> c[0] = 10
>>> d
[[10, 2, 3]] # c修改后d改变了

Python的变量名是一个标签,在b.append(a)之后, a = []相当于将这个标签贴到了新的变量[]上,在d.append(c)之后,a[0] = 10是修改了a,所以d改变了。

posted on 2018-11-28 17:59  Go_Forward  阅读(108)  评论(0编辑  收藏  举报