如何.remove()而不影响其他列表?

时间:2014-05-21 16:06:50

标签: python list

我想尝试从列表中删除元素而不影响之前的列表。

这将为您提供更好的图片:

>>> list_one = [1,2,3,4]
>>> list_two = list_one
>>> list_two.remove(2)
>>> list_two
[1, 3, 4]
>>> list_one  # <- How do I not affect this list?
[1, 3, 4]

此问题是否有解决方法?

1 个答案:

答案 0 :(得分:3)

您需要list_two list_one的副本,而不是对它的引用:

>>> list_one = [1,2,3,4]
>>> list_two = list_one[:]
>>> list_two.remove(2)
>>> list_two
[1, 3, 4]
>>> list_one
[1, 2, 3, 4]
>>>

[:]之后放置list_one会创建列表的浅表副本。