• 技术文章 >Python技术 >Python基础教程

    python ChainMap的调用效率

    小妮浅浅小妮浅浅2021-02-24 16:46:55原创1405

    ChainMap 类提供用于快速链接多个 dict,以便将它们视为单个单元。它通常比创建新 dict 和运行多个 update() 调用要快得多。

    In [1]: from collections import ChainMap
     
    In [2]: d1 = {'java': 3, 'python': 4}
     
    In [3]: d2 = {'c++': 1, 'java': 2}
     
    In [4]: for key, val in ChainMap(d1, d2).items():
       ...:     print(key, val)
       ...:     
    c++ 1
    java 3
    python 4

    拓展:

    后出现的重复的 key 将被忽略

    ChainMap 将链接的 dict 存储在一个列表中。该列表是公开的,可以使用 maps 属性进行访问或更新。

    In [10]: c1 = ChainMap(d1, d2)
     
    In [11]: c1.maps[0]
    Out[11]: {'java': 3, 'python': 4}
     
    In [12]: c1.maps[0]['python'] = 2
     
    In [13]: c1.items()
    Out[13]: ItemsView(ChainMap({'java': 3, 'python': 2}, {'c++': 1, 'java': 2}))
     
    In [14]: dict(c1)
    Out[14]: {'c++': 1, 'java': 3, 'python': 2}

    以上就是python ChainMap的调用效率,希望能对大家有所帮助,更多知识尽在python学习网。

    专题推荐:python chainmap
    品易云
    上一篇:Python如何捕获正在运行的CMD窗口内容? 下一篇:如何使用python绘制折线图?

    相关文章推荐

    • python中Fearturetools三个基本概念• defaultdict在python中接收调用对象• python线程中deque如何使用?• python列表运算详解• python添加列表元素的多种方法• Counter在python中两种用法• python对列表进行永久性或临时排序的方法• OrderedDict在python字典的实现• Python如何捕获正在运行的CMD窗口内容?

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网