Python删除字典元素后原字典长度仍为5的原因求解
原因说明
核心原因是你执行的删除操作没有作用在你统计长度的WF字典上,具体每步代码的实际效果如下:
Waterfall = dict(WF):dict()构造函数会基于传入的WF字典生成一个全新的独立字典对象,两个字典存储在完全独立的内存空间,后续修改新字典不会影响原字典WFdel Waterfall["Angel Falls"]:仅删除了新生成的Waterfall字典里的对应键值对,原始WF字典的5个键值对没有任何改动print(len(WF)):统计的是从未被修改的原始WF字典的长度,因此输出结果为5
如果你想要得到长度为4的结果,两种修改方案:
- 统计被修改后的新字典长度
print(len(Waterfall))
- 直接对原始
WF字典执行删除操作
del WF["Angel Falls"] print(len(WF))
内容的提问来源于stack exchange,提问作者wanderingsoul
相关产品推荐
相关产品推荐

