小编典典

Python 中 dict.clear() 和分配 {} 的区别

all

clear()在python中,调用和分配{}给字典有区别吗?如果是,那是什么?例子:

d = {"stuff":"things"}
d.clear()   #this way
d = {}      #vs this way

阅读 115

收藏
2022-08-07

共1个答案

小编典典

如果您有另一个变量也引用同一字典,则存在很大差异:

>>> d = {"stuff": "things"}
>>> d2 = d
>>> d = {}
>>> d2
{'stuff': 'things'}
>>> d = {"stuff": "things"}
>>> d2 = d
>>> d.clear()
>>> d2
{}

这是因为分配d = {}创建了一个新的空字典并将其分配给d变量。这留下d2了指向旧字典,其中仍有项目。但是,d.clear()清除dd2都指向的同一个字典。

2022-08-07