python字典副本_如何复制字典并仅在Python中编辑副本?
python字典副本
Python never implicitly copies the dictionary or any objects. So, while we set dict2 = dict1, we're making them refer to the same dictionary object. Hence, even when we mutate the dictionary, all the references made to it, keep referring to the object in its current state.
Python絕不會隱式復制字典或任何對象。 因此,當我們設置dict2 = dict1時 ,我們使它們引用相同的字典對象。 因此,即使我們對字典進行了變異,對其的所有引用也會繼續(xù)引用該對象的當前狀態(tài)。
dict1 = {"key1": "abc", "key2": "efg"}dict2 = dict1print(dict1) print(dict2)dict2['key2'] = 'pqr'print(dict1) print(dict2)Output
輸出量
{'key1': 'abc', 'key2': 'efg'} {'key1': 'abc', 'key2': 'efg'} {'key1': 'abc', 'key2': 'pqr'} {'key1': 'abc', 'key2': 'pqr'}To copy a dictionary, either uses a shallow copy or deep copy approach, as explained in the below example.
要復制字典 ,請使用淺層復制或深層復制方法 ,如以下示例中所述。
使用淺拷貝 (Using shallow copy)
dict1 = {"key1": "abc", "key2": "efg"}print(dict1)dict3 = dict1.copy() print(dict3)dict3['key2'] = 'xyz'print(dict1) print(dict3)Output
輸出量
{'key1': 'abc', 'key2': 'efg'} {'key1': 'abc', 'key2': 'efg'} {'key1': 'abc', 'key2': 'efg'} {'key1': 'abc', 'key2': 'xyz'}使用深度復制 (Using deep copy)
import copydict1 = {"key1": "abc", "key2": "efg"}print(dict1)dict4 = copy.deepcopy(dict1) print(dict4)dict4['key2'] = 'test1'print(dict4) print(dict1)Output
輸出量
{'key1': 'abc', 'key2': 'efg'} {'key1': 'abc', 'key2': 'efg'} {'key1': 'abc', 'key2': 'test1'} {'key1': 'abc', 'key2': 'efg'}翻譯自: https://www.includehelp.com/python/how-to-copy-a-dictionary-and-only-edit-the-copy.aspx
python字典副本
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結
以上是生活随笔為你收集整理的python字典副本_如何复制字典并仅在Python中编辑副本?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言 宏定义 去除宏定义_如何检查是否
- 下一篇: python 使用异常函数_您如何测试P