>>> D = {'a': 1, 'b': 2, 'c': 3} >>> D {'a': 1, 'c': 3, 'b': 2}
我刚在Python的命令行里做了这个,我只是想知道为什么键'c'会在键'b'后面呢???
来自官方文档:
字典可以理解为一组没有顺序的键值对,每个键都是独一无二的(在同一个字典里)。
在Python 2.7中,你可以使用有序字典。
这个顺序跟它们内部的工作方式有关,也跟它们在哈希表中的排列顺序有关。这个顺序又取决于键的哈希值、它们被插入的顺序,以及你使用的Python版本。
这个顺序是任意的(但不是随机的),所以你永远不需要去关心它会是什么顺序。
如果你想要一个排序好的键的列表,可以直接使用 sorted(D),在你的例子中,这样会返回 ['a', 'b', 'c']。
sorted(D)
['a', 'b', 'c']