加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

是否有一个python数据结构:键控,有序和可通过键和顺序寻址?

发布时间:2020-12-20 11:18:24 所属栏目:Python 来源:网络整理
导读:我正在寻找一个混合了OrderedDict但也可以通过整数寻址的数据结构,具体取决于添加元素的时间. 即 config_key = OrderedDict([('Version_Number','a'),('Hardware_Config','b'),('Size_Of_Data','c'),('Checksum','d')]) 这将起到如下作用: print config_key
我正在寻找一个混合了OrderedDict但也可以通过整数寻址的数据结构,具体取决于添加元素的时间.

config_key = OrderedDict([('Version_Number','a'),('Hardware_Config','b'),('Size_Of_Data','c'),('Checksum','d')])

这将起到如下作用:

>> print config_key['Version_Number']
a
>> print config_key[0]
a
>> print config_key['Size_Of_Data']
c
>> print config_key[2]
c
>> for x in config_key:
>>  print x
Version_Number
Hardware_Config
Size_Of_Data
Checksum

有任何想法吗?

解决方法

如果您使用的是Python 2.7,那么内置一个.

http://docs.python.org/library/collections.html#collections.OrderedDict

编辑:所以它看起来像是通过弹出操作支持项目的顺序,但你可以通过列表(my_ordered_dict)[i]做你想要的等价物,其中我是一个整数.

# Make your own like this...
class CustomOrderedDict(collections.OrderedDict):
    def __getitem__(self,key):
        try:
            return self.values()[key]
        except TypeError:
            return super(CustomOrderedDict,self).__getitem__(key)

编辑:

(对不起所有这些错误,我只是快速输入它,让你知道该怎么做.)

>修复返回值而不是键>固定递归流感>切换列表访问[]语法,因为作为列表,更有意义.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读