python字典深拷贝
时间: 2024-08-22 18:03:08 浏览: 47
Python字典深浅拷贝与循环方式方法详解
Python中的字典深拷贝是指创建一个新的字典,其中包含原字典的所有键值对,并且每个值都是原值的一个独立副本,而不是指向原始值的引用。这很重要,因为如果字典的值是另一个可变对象(如列表、字典等),直接赋值不会创建新的实例,而是共享内存地址。要进行深拷贝,你可以使用`copy`模块中的`deepcopy()`函数。
例如:
```python
import copy
original_dict = {'a': [1, 2], 'b': {'c': 3}}
shallow_copy = original_dict # 这不是深拷贝,原字典修改会影响浅拷贝
deep_copy = copy.deepcopy(original_dict) # 这是深拷贝,原字典修改不影响深拷贝
# 修改原字典
original_dict['b']['c'] = 4
print(shallow_copy) # 输出: {'a': [1, 2], 'b': {'c': 4}}
print(deep_copy) # 输出: {'a': [1, 2], 'b': {'c': 3}}
```
阅读全文