菜鸟IT的博客 >> Python
使用deepcopy函数对字典全面更深层的复制 | 需要导入与“深度复制”有关的字典数据复制的库 → from copy import deepcopy|
# 导入跟“深度复制”有关的库
from copy import deepcopy
ZiDian1={'BB':'张三','CC':['小红','小林'],'AA':'王五'}
print(ZiDian1)
# 打印分割线
print("*"*20)
ZiDian1["AA"]="王菲"
print(ZiDian1)
# 打印分割线
print("*"*20)
ZiDian2=ZiDian1
print("ZiDian2: ",ZiDian2)
# 打印分割线
print("#"*20)
# 使用copy函数,即使改变其中1个变量的赋值,也不影响另外1个变量。
# copy函数只是针对一级的“键值对”进行复制,更深层的数据结构依然只是改变指针。
# 那就需要用到深度复制 deepcopy函数,而且还需要提前导入相关的库
# 打印分割线
print("@"*20)
# 开始测试字典的深度复制,deepcopy函数
ZiDian4=deepcopy(ZiDian1)
ZiDian4["AA"]="王郎"
ZiDian4["CC"][0]="小芳"
print(ZiDian4)
print(ZiDian1)
——————
输出结果:
{'BB': '张三', 'CC': ['小红', '小林'], 'AA': '王五'}
********************
{'BB': '张三', 'CC': ['小红', '小林'], 'AA': '王菲'}
********************
ZiDian2: {'BB': '张三', 'CC': ['小红', '小林'], 'AA': '王菲'}
@@@@@@@@@@@@@@@@@@@@
{'BB': '张三', 'CC': ['小芳', '小林'], 'AA': '王郎'}
{'BB': '张三', 'CC': ['小红', '小林'], 'AA': '王菲'}
进程已结束,退出代码0
菜鸟IT博客[2021.12.13-15:51] 访问:291