等效于Python中的LinkedHashMap

问题描述 投票:23回答:5

LinkedHashMap是Hashtable之类的数据结构的Java实现(Python中的dict),具有可预测的迭代顺序。这意味着在遍历所有键的过程中,它们通过插入进行排序。这是通过维护插入顺序的附加链表完成的。

是否与Python中的等效?

python
5个回答
15
投票

如果您使用的是Python 2.7或Python> = 3.1,则可以在标准库中使用collections.OrderedDict

This answer到问题How do you retrieve items from a dictionary in the order that they’re inserted?中包含有序字典的实现,以防您不使用Python 3.x并且不想让自己依赖第三方ordereddict module。] >


11
投票

尽管您可以通过维护列表来跟踪插入顺序来执行相同的操作,但是Python 2.7Python >=3.1在collections模块中具有OrderedDict类。


3
投票

我不确定这是否是您要的内容:


1
投票

我不这么认为;您必须使用字典加列表。但是您可以很轻松地将其包装在一个类中,并定义keys__getitem____setitem__等以使其按您希望的方式工作。


0
投票

除了经过验证的评论;

© www.soinside.com 2019 - 2024. All rights reserved.