Python dict 和 OrderedDict
有序性
这里说的有序指的是维持键的插入顺序,并不是指使用二叉树维持键的大小关系。
As of Python version 3.7, dictionaries are ordered. In Python 3.6 and earlier, dictionaries are unordered.
而 OrderedDict
一直是有序的。
https://devdocs.io/python~3.11/library/collections#collections.OrderedDict
比较
- Python 内置的字典主要用于查询(但在 3.7 版本之后也附带了维持插入顺序的功能),如果要频繁使用排序的功能,
OrderedDict
性能更好。 OrderedDict
有一些排序的接口,方便实现 LRU 缓存等。OrderedDict
在相等比较时会额外比较键的顺序。