2017年网站建设工作总结,dhru商城网站建设,整个网站开发框架流程,怎么建设百度网站1.结论#xff1a;—–我们寻常意义的复制就是深复制#xff0c;即将被复制对象完全再复制一遍作为独立的新个体单独存在。所以改变原有被复制对象不会对已经复制出来的新对象产生影响。—–而浅复制并不会产生一个独立的对象单独存在#xff0c;他只是将原有的数据块打上一…1.结论—–我们寻常意义的复制就是深复制即将被复制对象完全再复制一遍作为独立的新个体单独存在。所以改变原有被复制对象不会对已经复制出来的新对象产生影响。—–而浅复制并不会产生一个独立的对象单独存在他只是将原有的数据块打上一个新标签所以当其中一个标签被改变的时候数据块就会发生变化另一个标签也会随之改变。这就和我们寻常意义上的复制有所不同了。2.代码2.1 当在 Python 中 a something 应该理解为给 something 贴上了一个标签 a。当再赋值给 a 的时候就好象把 a 这个标签从原来的 something 上拿下来贴到其他对象上(浅复制)例子1 a [1,2,3] b a a [4,5,6]b[1, 2, 3]#例子2 a [1,2,3] b a a[0] 4 a[1] 5 a[2] 6a[4, 5, 6]b[4, 5, 6]2.2 copy与deepcopy importcopy a1 copy.copy(a) a2 copy.deepcopy(a) a1 a2True a1 isa2False a[0] 0a1[1, 2, 3]a2[1, 2, 3] pass#啊好开心啊竟然是一样的而且改变a之后复制的确实没变啊。但是区别呢#往下看 b [1,2,[3,4]] b1 copy.copy(b) b2 copy.deepcopy(b) b[2][0] 0b1[1, 2, [0, 4]]b2[1, 2, [3, 4]]#这下copy好像不行了没复制内核啊只复制了个表皮这还不理解这下解释的很清楚了1. copy.copy 浅拷贝 只拷贝父对象不会拷贝对象的内部的子对象。2. copy.deepcopy 深拷贝 拷贝对象及其子对象2.3 玩玩更深的(别想歪了)4层其余自己可以试试 b [1,2,[3,4,[5,6,[7,8]]]] b1 copy.copy(b) b2 copy.deepcopy(b) b[2][2][2][0] 0b1[1, 2, [3, 4, [5, 6, [0, 8]]]]b2[1, 2, [3, 4, [5, 6, [7, 8]]]]#deepcopy依然站着哈哈2.4 普通的copya [1,2,3,4,5,[3,4,5]]#1.copyb a.copy()#更改a:a[5][1] abcprint(a:,a ,b:,b)# 结果a: [1, 2, 3, 4, 5, [3, abc, 5]] b: [1, 2, 3, 4, 5, [3, abc, 5]]a [1,2,3,4,5,[3,4,5]]#1.copyb a.copy()#更改a:a[5] abcprint(a:,a ,b:,b)#结果a: [1, 2, 3, 4, 5, abc] b: [1, 2, 3, 4, 5, [3, 4, 5]]结论a变的时候b也变了说明不是真正的独立而是相当于copy.copy()即普通的copy相当于copy.copy()。参考代码