5. python Collections -- OrdereDict
admin
2023-07-13 16:44:59
0次

有序字典就像普通字典一样,但他们记住了项目插入的顺序。 在迭代有序字典时,将按照首次添加键的顺序返回项目。

用法:

    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:

5. python Collections --  OrdereDict

    除了通常的映射方法外,有序字典还支持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示例和食谱)

由于有序字典会记住它的插入顺序,因此它可以与排序结合使用以创建一个排序后的字典:

5. python Collections --  OrdereDict

    删除条目时,新排序的字典会保持其排序顺序。 但是,当添加新的密钥时,密钥被追加到最后,并且不会保留排序。

    创建一个有序的字典变体也很简单,可以记住上一次插入秘钥的顺序。如果新条目覆盖现有条目,则会更改原始插入位置并移至结尾:

5. python Collections --  OrdereDict

    有序字典可以与Counter类组合使用,以便计数器记住第一次遇到的顺序元素:

5. python Collections --  OrdereDict


相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...