gpt4 book ai didi

Python 2.7 - 从列表 y 中删除项目而不从创建它的列表 x 中删除相同的项目

转载 作者:太空宇宙 更新时间:2023-11-04 01:11:20 24 4
gpt4 key购买 nike

在 python 中,我有一个列表变量。然后我创建一个新变量并将其等于第一个列表变量。我希望能够在不影响第一个变量的情况下从第二个变量中删除一个项目。我下面的代码是我正在尝试做的一个例子

x = [0,1,2,3,4,5,6,7,8,9,10]
y = x
y.remove(4)

但是,它从 x 和 y 中删除了 4。当我运行时

print y
print x

我明白了

[0, 1, 2, 3, 5, 6, 7, 8, 9, 10]
[0, 1, 2, 3, 5, 6, 7, 8, 9, 10]

在这个例子中,我怎样才能只从 y 而不是从 x 中删除 4?

最佳答案

x = [0,1,2,3,4,5,6,7,8,9,10]
y=x.copy()
y.remove(4)
print (x)
print (y)
>>>
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
[0, 1, 2, 3, 5, 6, 7, 8, 9, 10]
>>>

你必须复制第一个列表,然后它就是你想要的。

x = [0,1,2,3,4,5,6,7,8,9,10]
y=list(x)
y.remove(4)
print (x)
print(y)
>>>
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
[0, 1, 2, 3, 5, 6, 7, 8, 9, 10]
>>>

Python 2x。没有 'copy' 方法,所以第一个列表再次定义。

关于Python 2.7 - 从列表 y 中删除项目而不从创建它的列表 x 中删除相同的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27466204/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com