对象的浅拷贝和深拷贝
生活随笔
收集整理的這篇文章主要介紹了
对象的浅拷贝和深拷贝
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
對象的淺拷貝和深拷貝
- 簡要介紹
- 代碼實現
簡要介紹
淺拷貝:python拷貝一般都是淺拷貝。拷貝時,對象包含的子對象內容不拷貝。因此,源對象和拷貝對象引用同一個對象
深拷貝:使用copy模塊的deepcopy函數,遞歸拷貝對象中包含的子對象。源對象和拷貝對象所有的子對象也不同
變量的數值操作:只是形成兩個變量,實際上時指向同一個對象
代碼實現
// #測試淺拷貝和深拷貝 import copyclass MobilePhone:def __init__(self,cpu,screen):self.cpu=cpuself.screem=screenclass CPU:def calculate(self):print("算你個12345")print("cpu對象:",self) class Screen:def show(self):print("顯示一個好看的畫面,亮瞎你的眼")print("screen對象",self) #測試變量的賦值 c1=CPU() c2=c1 print(c1) print(c2)#測試淺拷貝 s1=Screen() m1=MobilePhone(c1,s1) m2=copy.copy(m1)print(m1,m1.cpu,m1.screem) print(m2,m2.cpu,m2.screem) #測試深復制 m3=copy.deepcopy(m1) print(m1,m1.cpu,m1.screem) print(m3,m3.cpu,m3.screem)變量賦值操作結果:
淺拷貝結果:
深拷貝結果
總結
以上是生活随笔為你收集整理的对象的浅拷贝和深拷贝的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 为什么有那么多坑??????
- 下一篇: 小米es55 如何开机