舍侠 发表于 2022-2-6 08:09:22

23讲课后作业

>>> x = [,]
>>> y = x.copy()
>>> y.append(7)
>>> y.append(8)
>>> x
[, ]
>>> y
[, , 7]
这个y不是浅拷贝吗?x的结果不应该是最外层的吗?【【1,2,3】,【4,5,6】,7】???请求大佬帮助

大马强 发表于 2022-2-6 09:50:30

我是这样想的,列表的copy是不浅拷贝只拷贝一层吗?
x = [,] 可以看作 x = a= b =
y = x.copy() =>y = , a,b是x,y共享的,所以只有修改a或b的操作在x,y中才能有作用

舍侠 发表于 2022-2-6 09:54:47

大马强 发表于 2022-2-6 09:50
我是这样想的,列表的copy是不浅拷贝只拷贝一层吗?
x = [,] 可以看作 x = a=

哦,这样啊,让我想想,我还以为和a,b ,并列的c算是最外面的一层,里面的数值就是第二层了

Twilight6 发表于 2022-2-6 10:40:33


看看下面这篇帖子可能有助于你的理解:

https://fishc.com.cn/forum.php?mod=redirect&goto=findpost&ptid=197496&pid=5423224

页: [1]
查看完整版本: 23讲课后作业