本文實例講述了Python深拷貝與淺拷貝用法。分享給大家供大家參考,具體如下:
1、對象的賦值
對象的賦值實際上是對象之間的引用:當(dāng)創(chuàng)建一個對象,然后將這個對象賦值給另外一個變量的時候,python并沒有拷貝這個對象,而只是拷貝了這個對象的引用。
當(dāng)對對象做賦值或者是參數(shù)傳遞或者作為返回值的時候,總是傳遞原始對象的引用,而不是一個副本。如下所示:
在python中將一個變量賦值給另一個變量,傳遞的是引用.無論是a的內(nèi)層變化還是外層變化,b都會發(fā)生同樣的變化.因為b和a指向了同一個引用.類似于c語言中的同一片內(nèi)存地址.
#coding=utf-8 a = [1,2,3,['a','b','c']] b = a print('*'*50) print('--- b = a ---') print('a = %s'%a) print('b = %s'%b) a.append(4) print('--- 外層a增加了元素4 ---') print('a = %s'%a) print('b = %s'%b) print('--- 內(nèi)層增加了元素"d" ---') a[3].append('d') print('a = %s'%a) print('b = %s'%b)
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。