有人可以告诉我为什么当您复制字典时它们都指向同一个目录,因此对一个目录的更改会影响另一个目录,但列表不是这种情况?
我对他们为什么会以一种方式设置字典并列出另一种方式背后的逻辑感兴趣。这很令人困惑,如果我知道其背后的原因,我可能会记得。
dict = {'Dog' : 'der Hund' , 'Cat' : 'die Katze' , 'Bird' : 'der Vogel'}
otherdict = dict
dict.clear()
print otherdict
这导致 otherdict = {}。所以两个 dicts 都指向同一个目录。但列表并非如此。
list = ['one' , 'two' , 'three']
newlist = list
list = list + ['four']
print newlist
newlist 仍然保留旧列表。所以他们没有指向同一个目录。我想知道它们不同的原因背后的基本原理?