看起来字典的keys()和values()方法返回的列表始终是一对一映射(假设在调用这两种方法之间字典没有改变)。
keys()
values()
例如:
>>> d = {'one':1, 'two': 2, 'three': 3} >>> k, v = d.keys(), d.values() >>> for i in range(len(k)): print d[k[i]] == v[i] True True True
如果你没有在调用keys()和调用之间更改字典values(),那么假设上述for循环将始终显示True是否错误?我找不到任何证明文件。
发现了这一点:
如果items(),keys(),values(), iteritems(),iterkeys(),和 itervalues()被称为中间没有修改的字典,列表会直接对应。
items()
keys(),values()
iteritems(),iterkeys()
itervalues()
在2.x文档和3.x文档上。