深浅拷贝

1,浅copy:是把列表第一层内存地址不区分的拷贝到新列表中。

不可变类型赋值,产生新值让原列表指向新列表但是内存地址不变。

 

原列表的数据与新列表的数据内存地址是一样的。

 

当原列表的数据修改是新列表的数据和内存地址也会发生改变。

 

 

2,深copy:是把列表第一层内存地址区分的拷贝到新列表中。

 可变类型赋值,原列表指向新列表产生新的内存地址。

 

 

当原列表的数据深度拷贝给一个新列表时,就是相当于重新定义了一个新列表和原列表就没有关系了,新列表更改数据原来的列表的数据也不会发生变化。

 

 

总结:

浅拷贝就是拷贝第一层,而列表更改数据则新列表也会跟原列表一起更新数据

深拷贝完全拷贝,而新列表数据更改只影响本身。













posted @ 2020-03-09 17:16  zhw_sylvia  阅读(183)  评论(0编辑  收藏  举报