有序字典(orderedDict)

orderdDict是对字典类型的补充,他记住了字典元素添加的顺序

例:import collections

dic = collections.OrderedDict()
dic[‘k1‘] = ‘v1‘
dic[‘k2‘] = ‘v2‘
dic[‘k3‘] = ‘v3‘
print(dic)

得:

OrderedDict([(‘k1‘, ‘v1‘), (‘k2‘, ‘v2‘), (‘k3‘, ‘v3‘)])

把数据拿到最后def move_to_end(self, key, last=True):
        ‘‘‘Move an existing element to the end (or beginning if last==False).

        Raises KeyError if the element does not exist.
        When last=True, acts like a fast version of self[key]=self.pop(key).

        ‘‘‘
        link = self.__map[key]
        link_prev = link.prev
        link_next = link.next
        soft_link = link_next.prev
        link_prev.next = link_next
        link_next.prev = link_prev
        root = self.__root
        if last:
            last = root.prev
            link.prev = last
            link.next = root
            root.prev = soft_link
            last.next = link
        else:
            first = root.next
            link.prev = root
            link.next = first
            first.prev = soft_link
            root.next = link
例:import collections

dic = collections.OrderedDict()
dic[‘k1‘] = ‘v1‘
dic[‘k2‘] = ‘v2‘
dic[‘k3‘] = ‘v3‘
print(dic)
dic.move_to_end(‘k1‘)
print(dic)得:

OrderedDict([(‘k1‘, ‘v1‘), (‘k2‘, ‘v2‘), (‘k3‘, ‘v3‘)])
OrderedDict([(‘k2‘, ‘v2‘), (‘k3‘, ‘v3‘), (‘k1‘, ‘v1‘)])

时间: 2024-12-22 19:44:24

有序字典(orderedDict)的相关文章

python创建有序字典OrderedDict()

python 有序字典OrderedDict # -*- coding:utf-8 -*- """ python有序字典 需导入模块collections """ import collections # 通过OrderedDict类创建的字典是有序的 dic = collections.OrderedDict() dic['k1'] = 'v1' dic['k2'] = 'v2' dic['k3'] = 'v3' print dic "

python模块介绍- collections(5)-OrderedDict 有序字典

1.3.5 OrderedDict 有序字典 OrderedDict是dict的子类,它记住了内容添加的顺序. import collections print 'Regular dictionary:' d = {} d['a'] = 'A' d['b'] = 'B' d['c'] = 'C' for k, v in d.items(): print k, v print '\nOrderedDict:' d = collections.OrderedDict() d['a'] = 'A' d

python中的有序字典

字典是python开发中的一种常用的数据结构,但是它在迭代时并不是按照元素的顺序进行,可能在某些场景下无法满足我们的需求,这就引入了有序字典 OrderedDict是dict的子类,它记住了内容添加的顺序 OrderedDict在比较时要内容和顺序完全相同时才视为相等 要使用OrderedDict得要求python版本2.7以上 例子: import collections keys = [1, 2, 3, 4, 5, 6] values = ['one', 'a', 'b', 'c', 'd'

python之collections之有序字典(OrderedDict)

一.定义OrderedDict是对字典的补充,它记住了字典元素的添加顺序.eg: 二.OrderedDict相关方法def clear(self): # real signature unknown; restored from __doc__ """ od.clear() -> None. Remove all items from od. 清除有序字典中的元素 """ passeg: def copy(self): # real sig

Python 有序字典(OrderedDict)与 普通字典(dict)

Python 的基础数据类型中的字典类型分为:无序字典 与 有序字典 两种类型 1.无序字典(普通字典): my_dict = dict()my_dict["name"] = "lowman"my_dict["age"] = 26my_dict["girl"] = "Tailand"my_dict["money"] = 80my_dict["hourse"] = No

有序字典

import collectionsdic1=collections.OrderedDict()dic3=collections.OrderedDict()dic1 ={ '#1':{'cpu':1, 'diskhard':3,'neicun':5}, '#2':{'cpu':2, 'diskhard':3,'neicun':5}, '#3':{'cpu':1, 'diskhard':4,'neicun':5},}dic2 ={ '#1':{'cpu':1, 'diskhard':3,'neic

python(3)-计数器,有序字典

计数器:Counter 在使用计数器之前需要先 import collections >>> import collections >>> obj = collections.Counter("abcde") >>> print(obj) Counter({'b': 1, 'a': 1, 'c': 1, 'e': 1, 'd': 1}) #分别统计每个字符出现的次数 >>> type(obj) <class

collections之有序字典和默认字典

#defaultdict的意思是定义一个dict,然后定义这个字典的value默认是一个什么类型 #如下,定义一个字典,该字典的value的值默认是listimport collectionsdef_dict = collections.defaultdict(list) def_dict['k1'].append('v1')print(def_dict['k1'])# ['v1']print(def_dict)# defaultdict(<class 'list'>, {'k1': ['v1

Python_Day_05 计数器(counter),有序字典(OrderDict),默认字典(defaultdict),可命名元祖(namedtuple),双向队列(deque),单项队列(deuqe.Queue)

Counter(计数器) 是一个字典的子类,存储形式同样为字典,其中存储的键为字典的元素,值为元素出现的次数,在使用之前我们需要先导入文件 import collections 初始化一个计数器 import collections # 初始化一个计数器 c = collections.Counter('sldfjoaoaufdlfuaof') print(c) # Counter({'f': 4, 'o': 3, 'a': 3, 'd': 2, 'u': 2, 'l': 2, 'j': 1,

python3 有序字典

查看帮助文档: 可以发现,所谓有序字典,是记录了插入顺序 很显示 ,最后字典的顺序就是你插入键值对的顺序 方法介绍:(OD,代表字典名,点后面为方法) OD.clear(), 清除所有键值对 OD.copy(), 浅拷贝 OD.fromkeys(s), 从s中得到key,如果不指定默认值,那么默认情况下会填充为None #!/usr/bin/env python #coding:utf-8 #@Author:Andy from collections import OrderedDict d =