我们应该会在实际使用中发现python的字典是无序的,譬如说这样
>>> a = {'key1':'a','key2':'b','key3':'c','key4':'d','key5':'e'} >>> a {'key3': 'c', 'key2': 'b', 'key1': 'a', 'key5': 'e', 'key4': 'd'} >>>
那如何生成一个有序的字典呢,可以使用collections模块中的OrderdDict类,可以这样
>>> from collections import OrderedDict >>> a = OrderedDict() >>> a['key1'] = 'a' >>> a['key2'] = 'b' >>> a['key3'] = 'c' >>> a['key4'] = 'd' >>> a['key5'] = 'e' >>> a OrderedDict([('key1', 'a'), ('key2', 'b'), ('key3', 'c'), ('key4', 'd'), ('key5', 'e')])
因为OrderdDict比普通的字典要大,如果要设计大量的OrderdDict的数据结构时,会额外消耗系统资源,所以使用前需要斟酌。