在程序的一次运行中,并提供了一个dict
d
在两者之间没有变异,那么
d.items()
d.iteritems()
d.keys()
d.iterkeys()
d.values()
d.itervalues()
它们都是一致的,并且每次都返回相同的序列。
但是,如果修改dict,它可能会在内部收缩或增长并重新排列,这会改变顺序。在下一个突变之前,它们将保持不变。
编辑:有一个例外,这是经过深思熟虑的。如果仅替换与现有键关联的值,则顺序将
不
改变。所以如果
k in d
是
True
,
d[k] = v
是无害的。但是,如果添加新密钥或删除密钥,则所有赌注都将取消。