复制字典:保留原创性
在 Python 中将一个字典分配给另一个字典时,重要的是要记住创建的是引用,而不是副本。这意味着对分配的字典(副本)所做的任何更改也将影响原始字典。为了防止这种行为,必须创建字典的真实副本。
考虑以下示例:
dict1 = {"key1": "value1", "key2": "value2"} dict2 = dict1 dict2["key2"] = "WHY?!" print(dict1) # {'key2': 'WHY?!', 'key1': 'value1'}
将 dict2 分配给 dict1 后,对 dict2 所做的更改将反映在 dict1 中,如下所示出色地。为了避免这种情况,必须进行显式复制:
dict2 = dict(dict1) dict2["key2"] = "WHY?!" print(dict1) # {'key2': 'value2', 'key1': 'value1'}
或者,可以使用 copy() 方法:
dict2 = dict1.copy() dict2["key2"] = "WHY?!" print(dict1) # {'key2': 'value2', 'key1': 'value1'}
通过使用这些方法之一,可以对复制的字典(dict2)不会影响原始字典(dict1)。
以上是如何在Python中正确复制字典并避免修改原始字典?的详细内容。更多信息请关注PHP中文网其他相关文章!