python--有序字典

字典是python开发中很常用的一种数据结构,但dict有个缺陷(其实也不算缺陷),迭代时并不是按照元素添加的顺序进行,可能在某些场景下,不能满足我们的要求。有几种解决方法:

1、使用OrderedDict(要求python2.7或以上)

OrderedDict是dict的子类,它记住了内容添加的顺序。
比较时,OrderedDict要内容和顺序完全相同才会视为相等。

一个例子:
>>> import collections
>>> d = {'banana': 3, 'apple':4,'pear': 1, 'orange': 2}
>>> collections.OrderedDict(sorted(d.items(),key=lambda t: t[1]))
OrderedDict([('pear', 1), ('orange', 2), ('banana', 3), ('apple', 4)])

2、使用第三方库(Python 2.4-2.6)

参见:https://pypi.python.org/pypi/ordereddict

3、使用list

与dict相反,list是有序的

你可能感兴趣的:(python--有序字典)