gpt4 book ai didi

python - 我怎样才能根据值(value)而不是内存使 x=y ?

转载 作者:太空宇宙 更新时间:2023-11-04 06:46:21 25 4
gpt4 key购买 nike

我需要一些帮助来理解这段代码:

x = [1,2,3]
y = [4,5,6]
x = y
print x
print y
y.remove(4)
print x
print y

当我从列表 [4,5,6] 中删除 4 时,xy 变量将指向内存中相同的 [5,6] 列表,对吗?
如果是这样,那么我怎样才能使 x 等于 y 列表的副本,以便 xy两者都指向内存中的不同位置,但这些位置都具有相同的值? (与它们都指向内存中的同一个位置相反,如上所示)

最佳答案

特别是对于列表,您可以通过获取整个列表的一部分来进行浅拷贝:

x = y[:]

这不能保证适用于任意可切片对象(例如,numpy 数组切片不会创建新数组),因此使用内置的 copy 会很有用。模块:

import copy
x = copy.copy(y)

可以预期对任意 y 起作用。

关于python - 我怎样才能根据值(value)而不是内存使 x=y ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16756970/

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