Python的對象賦值、淺copy、深copy


1、對象賦值

在python中,對象的賦值就是簡單的引用,a = [1,2,3], b=a, 在上述情況下,a和b是一樣的,他們指向同一片內存,b不過是a的別名,是引用,我們可以使用b is a 去判斷,返回True

 

 

 

2.淺copy

深拷貝和淺拷貝是只針對Object和Array這樣的引用數據類型的。

需要導入copy

淺copy會創建新的一個內存空間,但是只復制了第一層數據,如下圖中,列表a里的字典其實儲存的是內存地址,所以只復制了字典的地址,當字典變化時跟着變化

 

 

 

 

3.深copy

而深copy,也會創建一個新的內存地址,相當於完全copy一份數據,比較吃內存

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM