Python OrderedDict怎么用

  • 更新时间:2021-07-20 08:46:14
  • 编辑:朱阳晖
我们帮大家精选了相关的编程文章,网友连乐瑶根据主题投稿了本篇教程内容,涉及到Python相关内容,已被512网友关注,如果对知识点想更进一步了解可以在下方电子资料中获取。

参考资料

正文内容

《Python OrderedDict怎么用》是一篇值得学习的技术文章,知识点总结的很细,把代码做了调试发布出来,希望对网友有用。

Python OrderedDict怎么用

1、为了维持Key的顺序,可以使用OrderedDict。OrderedDict的Key按插入顺序排列,不是Key本身。

>>> from collections import OrderedDict
>>> d = dict([('a', 1), ('b', 2), ('c', 3)])
>>> d # dict的Key是无序的
{'a': 1, 'c': 3, 'b': 2}
>>> od = OrderedDict([('a', 1), ('b', 2), ('c', 3)])
>>> od # OrderedDict的Key是有序的
OrderedDict([('a', 1), ('b', 2), ('c', 3)])

2、OrderedDict可以实现一个FIFO(先进先出)的dict,当容量超出限制时,先删除最早添加的Key:

from collections import OrderedDict
 
class LastUpdatedOrderedDict(OrderedDict):
 
    def __init__(self, capacity):
        super(LastUpdatedOrderedDict, self).__init__()
        self._capacity = capacity
 
    def __setitem__(self, key, value):
        containsKey = 1 if key in self else 0
        if len(self) - containsKey >= self._capacity:
            last = self.popitem(last=False)
            print('remove:', last)
        if containsKey:
            del self[key]
            print('set:', (key, value))
        else:
            print('add:', (key, value))
        OrderedDict.__setitem__(self, key, value)

以上就是Python OrderedDictde的用法,希望对大家有所帮助。

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

相关教程

  • Python Socket编程详细介绍

    这篇文章主要介绍了Python Socket编程详细介绍,socket可以建立连接,传递数据,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。

    发布时间:2019-08-26

  • Python数据类型及运算符的实例代码讲解

    本篇文章给大家带来的内容是关于Python数据类型及运算符的详细总结(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

    发布时间:2020-01-18

用户留言