您好,登錄后才能下訂單哦!
直接賦值和copy的區(qū)別:
例子:
dict1 = {'user':'runoob','num':[1,2,3]} dict2 = dict1 # 淺拷貝: 引用對(duì)象 dict3 = dict1.copy() # 深拷貝:深拷貝父對(duì)象(一級(jí)目錄),子對(duì)象(二級(jí)目錄)不拷貝,還是引用 # 修改 data 數(shù)據(jù) dict1['user']='root' dict1['num'].remove(1) # 輸出結(jié)果 print(dict1) print(dict2) print(dict3)
實(shí)例中 dict2 其實(shí)是 dict1 的引用(別名),所以輸出結(jié)果都是一致的,dict3 父對(duì)象進(jìn)行了深拷貝,不會(huì)隨dict1 修改而修改,子對(duì)象是淺拷貝所以隨 dict1 的修改而修改。
{'user': 'root', 'num': [2, 3]} {'user': 'root', 'num': [2, 3]} {'user': 'runoob', 'num': [2, 3]}
例子:求打印的結(jié)果
def extend_list(val, list=[]): list.append(val) return list list1 = extend_list(10) list2 = extend_list(123, []) list3 = extend_list('a') print("list1 = %s" % list1) print("list2 = %s" % list2) print("list3 = %s" % list3)
輸出結(jié)果:
list1 = [10, 'a'] list2 = [123] list3 = [10, 'a']
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。