Python中关于浅拷贝的一个小问题
有一个列表 a = [1,[2,3]]
b = list(a)
通过以上方式完成浅拷贝之后,为什么列表 b 的 b[0]不指向列表 a 的 a[0]呢,如果说是因为整形是不可变对象因此而导致的结果的话。修改一下 a 列表。
a = [1,[2,3],(4,5)]
b = list(a)
我发现当我再添加一个不可变对象元组的时候,b[2]指向了 a[2]指向的(4,5),我看到这里的时候一下子就懵了。
小的非常想要得到解答,如果有大哥可以帮忙解答的话,真的非常感激。
Python中关于浅拷贝的一个小问题
3 回复
我无法理解你的问题
指向呀
>>>c = [1, [2, 2]]
>>>d = list©
>>>id©, id(d)
(76898120, 77072456)
>>>id(c[0]), id(d[0]), id(c[1]), id(d[1])
(1470780192, 1470780192, 77045704, 77045704)
我在 pythontutor 上执行的时候,是没有指向的。这下真的晕了。

