1. 程式人生 > >有序字典(orderedDict)

有序字典(orderedDict)

sel first root pan ror strong ext 補充 div

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‘)])

有序字典(orderedDict)