对于嵌套列表的复制会涉及到深复制和浅复制
浅复制:只复制最外侧的容器(列表),容器内的列表使用(复制)原容器的引用;浅复制是默认行为。
In [2]: a = [1,[2,3]] In [3]: b = a[:] In [4]: b is a Out[4]: FalseIn [5]: b == a Out[5]: TrueIn [6]: a[1] is b[1] Out[6]: True
深复制:副本不共享内部对象引用,而是独立开辟内存空间
In [7]: from copy import deepcopy In [8]: a = [1,[2,3],[4,5]] In [9]: b = deepcopy(a) In [10]: a is b Out[10]: FalseIn [11]: a[1] is b[1] Out[11]: False