在Python中复制嵌套列表
我想复制一个2D列表,这样如果我修改一个列表,另一个不会被修改。
对于一维列表,我只是这样做的:
a = [1, 2]
b = a[:]
而现在如果我修改b
,则a
不会被修改。
但是这不适用于二维列表:
a = [[1, 2],[3, 4]]
b = a[:]
如果我修改b
, a
也会被修改。
我该如何解决?
对于一个更通用的解决方案,无论维数如何,都可以使用copy.deepcopy()
:
import copy
b = copy.deepcopy(a)
b = [x[:] for x in a]
链接地址: http://www.djcxy.com/p/26697.html