Python中字典的copy方法總結

2021-08-03 09:59:56 字數 704 閱讀 4364

字典中copy方法是複製乙個字典的鍵值對。

使用copy方式叫做=淺複製=

這其中有兩個概念要弄清楚1.值的替換 2.值的修改

1.值的替換

x = ['a':'1', 'b':'2','c':[1,2,3]]

y = x.copy()

y['a'] = 2    //這叫值的=替換=,並不會改變x

y['c'].remove(2)

q:字典中的鍵值對是怎麼儲存的?是有序的嗎?

y['c'].remove(2)    //這叫修改,因為你修改了列表中的乙個值,並不是替換列表yx

//x也同時被改變了

y['c'] = ['x', 'x']

y    //這叫替換,把一次操作把整個列表替換了而不是乙個乙個的值修改

x    //x並沒有被改變

==深複製==

深複製的含義是複製後的副本和原來的完全脫離干係,替換或修改副本並不會改變原來的字典

from copy import deepcopy

c =

c_copy = d.copy()

dc_copy = deepcopy(c)

c_copy['name'].remove('a')

c =     //前複製改變原字典

dc_copy['name'].remove('b')

dc_copy

c

python 字典中的copy函式的淺拷貝問題

python淺拷貝與深拷貝 淺拷貝是指拷貝的只是原物件元素的引用,換句話說,淺拷貝產生的物件本身是新的,但是它的內容不是新的,只是對原物件的乙個引用。深拷貝是複製乙個內容而不是簡單的複製引用而已 換句話說 有指標的情況下,淺拷貝只是增加了乙個指標指向已經存在的記憶體,而深拷貝就是增加乙個指標並且申請...

python中字典setdefault方法使用

經檢查,發現自己理解錯了需求,請忽略當前博文 像計算機科學家一樣思考python 11.10練習中 練習 11 2 閱讀字典方法setdefault的文件,並使用它來寫乙個更簡潔的invert dict def invert dict n 返回乙個列表,第一項用setdefault查詢使用者輸入的單...

Python 字典的setdefault 方法

setdefault key default if key is in the dictionary,return its value.if not,insert key with a value of default and return default.default defaults to n...