簡(jiǎn)單了解Python字典copy與賦值的區(qū)別
描述
Python 字典(Dictionary) copy() 函數(shù)返回一個(gè)字典的淺復(fù)制。
語(yǔ)法
copy()方法語(yǔ)法:
dict.copy()
返回值
返回一個(gè)字典的淺復(fù)制。
實(shí)例
以下實(shí)例展示了 copy()函數(shù)的使用方法:
dict1 = {’Name’: ’Zara’, ’Age’: 7}; dict2 = dict1.copy()print 'New Dictinary : %s' % str(dict2)New Dictinary : {’Name’: ’Zara’, ’Age’: 7}
直接賦值和 copy 的區(qū)別
可以通過(guò)以下實(shí)例說(shuō)明:
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){’user’: ’root’, ’num’: [2, 3]}{’user’: ’root’, ’num’: [2, 3]}{’user’: ’runoob’, ’num’: [2, 3]}
實(shí)例中 dict2 其實(shí)是 dict1 的引用(別名),所以輸出結(jié)果都是一致的,dict3 父對(duì)象進(jìn)行了深拷貝,不會(huì)隨dict1 修改而修改,子對(duì)象是淺拷貝所以隨 dict1 的修改而修改。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. idea設(shè)置提示不區(qū)分大小寫(xiě)的方法2. IntelliJ IDEA設(shè)置默認(rèn)瀏覽器的方法3. HTTP協(xié)議常用的請(qǐng)求頭和響應(yīng)頭響應(yīng)詳解說(shuō)明(學(xué)習(xí))4. CentOS郵件服務(wù)器搭建系列—— POP / IMAP 服務(wù)器的構(gòu)建( Dovecot )5. IntelliJ IDEA創(chuàng)建web項(xiàng)目的方法6. .NET SkiaSharp 生成二維碼驗(yàn)證碼及指定區(qū)域截取方法實(shí)現(xiàn)7. docker容器調(diào)用yum報(bào)錯(cuò)的解決辦法8. VMware中如何安裝Ubuntu9. IntelliJ IDEA導(dǎo)入項(xiàng)目的方法10. django創(chuàng)建css文件夾的具體方法
