deepcopy()
函数不起作用。复制的列表会被原始列表中的更改所覆盖。
我在Sudoku求解器上创建。为了查找错误,我想在一个大列表中跟踪数独的所有步骤。但是,大列表仅显示数独的实际状态。
>>> R = [1, 4, 6]
>>> S = [[1,4], [1,2], [1,5]]
>>> R.append(copy.deepcopy(S))
>>> R
[1, 4, 6, [[1, 4], [1, 2], [1, 5]]]
>>> S = []
>>> R
[1, 4, 6, [[1, 4], [1, 2], [1, 5]]]
这就是它应该如何工作的,并且在这个简单的示例中它可以做到。
它不在我的文件中,R
看起来像:[1, 4, 6, []]
但是S
会存储实际的数独。但是我的文件很大,所以我会为您保存。
我想我错过了关于deepcopy
函数和python使用引用来分配变量的方式的一些知识...我也尝试了list()
和copy()
函数来制作副本,但一无所获到目前为止工作。
Alvast bedankt