作家
登录

关于高效使用Python字典的清单

作者: 来源: 2017-08-24 10:04:40 阅读 我要评论

【51CTO晃荡】8.26 带你与清华大年夜学、搜狗、京东大年夜咖们一路商量基于算法的IT运维实践


Python之禅中有一条开辟哲学是:

字典(dict)对象是 Python 最常用的数据构造,社区曾有人开打趣地说:"Python妄图用字典装载全部世界",字典在Python中的重要性不问可知,这里整顿了几个关于高效应用字典的清单,欲望Python开辟者可以在日常应用开辟中合劳顿用,让代码加倍 Pythonic。

关于高效应用Python字典的清单

1、用 in 关键字检查 key 是否存在

There should be>

  • d = {'name''python' 
  • if d.has_key('name'): 
  •     pass 
  • good

    1. if 'name' in d: 
    2.     pass 

    2、用 get 获取字典中的值

    关于获取字典中的值,一种简单的方法就是用 d[x] 拜访该元素,然则这种情况在 key 不存在的情况下会报 KeyError 缺点,当然你可以先用 in 操作检查 key 是否在字典中再获取,不过这种方法不相符 Python 之禅中说的:

    • Simple is better than complex.
    • Flat is better than nested.

    好的代码应当是简单易懂的,扁平的代码构造加倍可读。我们可以应用 get 办法来代替 if ... else

    bad

    1. d = {'name''python'
    2. if 'name' in d: 
    3.     print(d['hello']) 
    4. else
    5.     print('default'

    good

    good

    1. print(d.get("name""default")) 

    3、用 setdefault 为字典中不存在的 key 设置缺省值

    1. data = [ 
    2.         ("animal""bear"), 
    3.         ("animal""duck"), 
    4.         ("plant""cactus"), 
    5.         ("vehicle""speed boat"), 
    6.         ("vehicle""school bus"
    7.     ] 

    在做分类统计时,欲望把同一类型的数据归到字典中的某种类型中,比瘸琅绫擎代码,把雷同类型的事物用列表的情势从新组装,获得新的字典

    1. groups = {} 
    2.  
    3. >>>  
    4. {'plant': ['cactus'],  
    5.  'animal': ['bear''duck'],  
    6.  'vehicle': ['speed boat'

        推荐阅读

        5G概念炒的火热,公共WiFi建设却为何不见进展?

      【51CTO晃荡】8.26 带你与清华大年夜学、搜狗、京东大年夜咖们一路商量基于算法的IT运维实践对于公共WiFi来说,确切存在市场需求,只是办事质量须要进步。这么看下来,不论对于何种公共WiFi,移动数据技>>>详细阅读


      本文标题:关于高效使用Python字典的清单

      地址:http://www.17bianji.com/lsqh/36908.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)