python:更改一个列表中的元素也会更改副本列表中的元素

时间:2020-07-13 19:05:18

标签: python

我有以下代码

x = [[1,0.5],[0.5, 1]]
w = x[:]
w[0][0] = 10
print(w)
print(x)

我正在更改w中的第一个元素,但是它也更改了x中的相同元素。如何阻止元素在x中更改

1 个答案:

答案 0 :(得分:-1)

import copy

w=copy.deepcopy(x)

您需要将x深层复制到新列表W。否则,w只是引用内存中相同列表的新对象。这就是为什么您在w上所做的更改也会更改原始列表x