5. python Collections -- OrdereDict
有序字典就像普通字典一样,但他们记住了项目插入的顺序。 在迭代有序字典时,将按照首次添加键的顺序返回项目。
用法:
class collections.OrderedDict([items])
返回一个字典子类的实例,支持通常的字典方法。
OrderedDict是一个字典,它记住了键被首次插入的顺序。
如果新条目覆盖现有条目,则原始插入位置保持不变。
删除一个条目并重新插入它将会把它移到最后。
popitem(last=True)
有序字典的popitem()方法返回并删除(key, value)对。
如果 last 是 True 或者如果 FIFO(先进先出) 的顺序为false,则按LIFO(后进先出)顺序返回键值对。
如果last是True,则以LIFO[后进先出]的顺序返回,如果为Flase,则以FIFO[先进先出]顺序返回。
move_to_end(key, last=True)
将现有键移至有序字典的任意一端。 如果last为True(默认值),则项目移动到右侧,如果last为false,则移动到开头。
如果key不存在,则引发KeyError:
除了通常的映射方法外,有序字典还支持reverse()方法进行反向迭代。
OrderedDict对象之间的等式测试是顺序敏感的,并且以 list(od1.items()) == list(od2.items()) 的形式实现。
OrderedDict对象与其他映射(Mapping)对象之间的等式测试对常规字典对顺序不敏感。
这允许在使用常规字典的任何地方替换OrderedDict对象。
版本3.5中更改:OrderedDict的项目,键和值视图现在支持使用reversed()进行反向迭代。
在版本3.6中更改:随着PEP 468的接受,保留传递给OrderedDict构造函数和update()方法的关键字参数的顺序。
OrderedDict Examples and Recipes(OrderedDict示例和食谱)
由于有序字典会记住它的插入顺序,因此它可以与排序结合使用以创建一个排序后的字典:
删除条目时,新排序的字典会保持其排序顺序。 但是,当添加新的密钥时,密钥被追加到最后,并且不会保留排序。
创建一个有序的字典变体也很简单,可以记住上一次插入秘钥的顺序。如果新条目覆盖现有条目,则会更改原始插入位置并移至结尾:
有序字典可以与Counter类组合使用,以便计数器记住第一次遇到的顺序元素:
转载于:https://blog.51cto.com/286577399/2345136
5. python Collections -- OrdereDict相关推荐
- 四种高性能数据类型,Python collections助你优化代码、简洁任务
在这篇文章中,机器学习工程师 George Seif 介绍了 Python collections 模块最受欢迎的四种数据类型以及它们各自的使用方法.这些数据类型可以对代码进行优化,进而实现更简洁的任 ...
- python︱ collections模块(namedtuple/defaultdict/OrderedDict等)
collections有的功能: ['deque', 'defaultdict', 'namedtuple', 'UserDict', 'UserList', 'UserString',\'Count ...
- 一文看懂Python collections模块的高效数据类型
原作: George Seif, 发表于medium.com, 大江狗原创翻译, 并对原文稍作修改. Python的最大优势之一是其广泛的模块和软件包.这将Python的功能扩展到许多受欢迎的领域,包 ...
- python collections模块(数据结构常用模块)计数器Counter 双向队列deque 默认字典defaultdict 有序字典OrderedDict 可命名元组namedtuple
collections 模块----Python标准库,是数据结构常用模块 常用类型有: 计数器(Counter) 双向队列(deque) 默认字典(defaultdict) 有序字典(Ordered ...
- python collections模块_Python 的collections模块
前言: collections是实现了特定目标的容器,以提供python标准内建容器dict,list,set和tuple的替代选择. Counter Counter是一个dict子类,主要是用来对你 ...
- python3 collections模块 tree_第30天: Python collections 模块
by 豆豆 1.简介 collections 是 python 的内置模块,提供了很多方便且高性能的关于集合的操作,掌握这些知识有助于提高代码的性能和可读性. 2.常用功能 2.1 namedtupl ...
- defaultdict python3,Python collections.defaultdict() 与 dict的使用和区别|python3教程|python入门|python教程...
https://www.xin3721.com/eschool/python.html 在Python里面有一个模块collections,解释是数据类型容器模块.这里面有一个collections. ...
- python collections 模块中的 deque
collections.deque介绍 collections 是 python 内建的一个集合模块,里面封装了许多集合类,其中队列相关的集合只有一个:deque. deque 是双边队列(doubl ...
- python collections(容器)模块
原文:http://docs.pythontab.com/interpy/collections/collections/ 容器(Collections) Python附带一个模块,它包含许多容器数据 ...
最新文章
- C++ Priority Queues(优先队列)
- 放大器的传递函数_保证放大器的稳定性什么最重要?反馈电阻一定要选对!
- 数学建模学习笔记(七)——图论最短路问题
- (52)Verilog HDL下升沿检测
- 你不知道的JS之作用域和闭包(二)词法作用域
- Requests 入门
- 四位七段数码管pcb_BlockPi入门教程——数码管
- tesseract ocr 5.0 Api调用,delphi源码实现--识别率超高速度快
- Spark安装出错问题
- 使用gnome3桌面总结
- java web聊天室论文_基于javaweb聊天室.doc
- jcifs报错,jcifs.util.transport.TransportException: Transport1 timedout waiting for response to SmbComR
- 【vue d3 v4】vue2结合d3实现类似企查查的股权穿透图、股权结构图
- C++ 操作Excel
- Nylg541 最强DE 战斗力
- 【慕容话币】|如何养成正确的交易思想
- mysql 事务隔离界别_MySQL数据库事务隔离级别(Transaction Isolation Level)
- 3D图形:矩阵的相关知识
- 代驾APP_第一章_项目环境搭建_第二节
- 解决磁盘空间不足的问题
热门文章
- 小卡片遇热就变机器人,不插电就能运动,哈佛加州理工新研究登上Nature子刊...
- 6000星人气深度学习资源!架构模型技巧全都有,图灵奖得主LeCun推荐
- clion register
- 第5章 案例研究: QuickCheck
- Dominating Patterns
- 修改wordpress地址(URL)导致不能登录后台
- ios Runloop
- 缇 、 像素 、 厘米
- 将win7电脑变身WiFi热点,让手机、笔记本共享上网
- [转]C#多线程学习(四) 多线程的自动管理(线程池)