Python OrderedDict怎么用
2023-03-20 15:29:56 时间
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的用法,希望对大家有所帮助。更多Python学习指路:python基础教程
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
相关文章
- 《循序渐进学Spark 》Spark 编程模型
- python 文件操作
- 《Python数据挖掘:概念、方法与实践》扩展你的数据挖掘工具箱
- 《Python数据挖掘:概念、方法与实践》关联规则挖掘
- 《Python数据挖掘:概念、方法与实践》导读
- 《Spark 官方文档》Spark配置(二)
- 《Spark 官方文档》在YARN上运行Spark
- 《 Python数据可视化》导读
- 《Spark官方文档》集群模式概览
- PostgreSQL · 实现分析 · PostgreSQL 10.0 并行查询和外部表的结合
- TaoBeier 的 Vim 配置,支持 Python、Javascript、Golang 等
- 在Linux上使用Python和Flask创建你的第一个应用
- 《Ansible权威指南》一1.4 Ansible是如何工作的
- 《Ansible权威指南》一1.8 Python多环境扩展管理
- 《Ansible权威指南》一1.8 Python多环境扩展管理
- 《Ansible权威指南》一2.3 Ansible命令用法详解
- 《Ansible权威指南》一2.4 Ansible系列命令用法详解与使用场景介绍
- 《Ansible权威指南》一3.2 Ad-Hoc命令集介绍
- 《Ansible权威指南》一3.3 Ad-Hoc组管理和特定主机变更
- 《Ansible权威指南》一3.4 Ad-Hoc用户与组管理