菜鸟IT的博客 >> Python
使用copy函数,只能是对一级“键值对”的字典进行复制 | 对更深层的字典的元素的值进行复制 →ZiDian3["CC"][0]="小芳"
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函数,而且还需要提前导入相关的库
ZiDian3=ZiDian1.copy()
ZiDian3["AA"]="王郎"
ZiDian3["CC"][0]="小芳"
print(ZiDian3)
print(ZiDian1)
————————————
输出结果:
{'BB': '张三', 'CC': ['小红', '小林'], 'AA': '王五'}
********************
{'BB': '张三', 'CC': ['小红', '小林'], 'AA': '王菲'}
********************
ZiDian2: {'BB': '张三', 'CC': ['小红', '小林'], 'AA': '王菲'}
####################
{'BB': '张三', 'CC': ['小芳', '小林'], 'AA': '王郎'}
{'BB': '张三', 'CC': ['小芳', '小林'], 'AA': '王菲'}
菜鸟IT博客[2021.12.13-15:49] 访问:303