簡單了解Python字典copy與賦值的區(qū)別
描述
Python 字典(Dictionary) copy() 函數(shù)返回一個(gè)字典的淺復(fù)制。
語法
copy()方法語法:
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ū)別
可以通過以下實(shí)例說明:
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 的修改而修改。
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. IntelliJ IDEA導(dǎo)入項(xiàng)目的方法2. Android View 事件防抖的兩種方案3. ASP常用源代碼的總結(jié)(下)4. Android EditText隨輸入法一起移動(dòng)并懸浮在輸入法之上的示例代碼5. 基于Java實(shí)現(xiàn)記事本功能6. Java 實(shí)現(xiàn)定時(shí)任務(wù)的三種方法7. Python ini文件常用操作方法解析8. Java通俗易懂系列設(shè)計(jì)模式之建造者模式9. Java 獲取properties的幾種方式10. 淺析vue偵測數(shù)據(jù)的變化之基本實(shí)現(xiàn)

網(wǎng)公網(wǎng)安備