看起来字典返回的列表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
如果你不改变 callkeys()和 call之间的字典values(),假设上面的 for 循环总是打印 True 是错误的吗?我找不到任何文件证实这一点。
发现这个:
如果items(), keys(), values(), iteritems(), iterkeys(), 和 itervalues()被调用而没有对字典进行干预修改,则列表将直接对应。
items()
iteritems()
iterkeys()
itervalues()
关于2.x 文档和3.x 文档。