Python字典中 fromkeys()方法的坑

fromkeys()方法类似于列表的浅拷贝

首先用该方法创建一个字典

dict_ = dict.fromkeys(('a','b','c','d'),[])
print(dict_)

输出:

{'a': [], 'b': [], 'c': [], 'd': []}

当我向某个key添加value时,问题出现了

dict_['b'].append("!!!")
print(dict_)

输出:

{'a': ['!!!'], 'b': ['!!!'], 'c': ['!!!'], 'd': ['!!!']}

所有的key都指向同一个value,就好比很多个标签都指向同一个物品

在这里插入图片描述
和列表浅拷贝类似

a = ["这","是","啥"]
b = a #浅拷贝
c = a[:] #深拷贝
print("a: ",a)
print("b: ",b)
print("c: ",c)

输出:

a:  ['这', '是', '啥']
b:  ['这', '是', '啥']
c:  ['这', '是', '啥']
#Python学习交流群:711312441
del a[1]  #删除 a 的第二个元素
print("a: ",a)
print("b: ",b)
print("c: ",c)

输出:

a:  ['这', '啥']
b:  ['这', '啥']
c:  ['这', '是', '啥']
posted @   小小程序员ol  阅读(17)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示