zoukankan      html  css  js  c++  java
  • python 字典

    dict:
    
    Python 内置了字典:dict的支持,dict全称dictionary,在其他语言中称为map,使用键-值(key-value)存储
    
    举个例子,假设要根据同学的名字查找对应的成绩,如果用list实现,需要两个list
    
    如果用dict实现,只需要一个"名字"-"成绩"的对照表,直接根据名字查找成绩,无论这个表有多大,
    
    查找速度都不会变慢。用Python写一个dict如下:
    
    # -*- coding: UTF-8 -*-
    d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
    
    print d['Michael']
    
    C:Python27python.exe C:/Users/TLCB/PycharmProjects/untitled/t1.py
    95
    
    
    # -*- coding: UTF-8 -*-
    d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
    
    print d
    
    d['Adam']=67
    print '--------------'
    print d
    
    C:Python27python.exe C:/Users/TLCB/PycharmProjects/untitled/t1.py
    {'Bob': 75, 'Michael': 95, 'Tracy': 85}
    --------------
    {'Bob': 75, 'Michael': 95, 'Tracy': 85, 'Adam': 67}
    
    
    
    要避免key不存在的错误,有两种办法,一是通过in判断key是否存在:
    
    判断Key是否存在:
    
    # -*- coding: UTF-8 -*-
    d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
    
    if 'Thomas' in d:
        print 11111
    else:
        print 22222
    
    C:Python27python.exe C:/Users/TLCB/PycharmProjects/untitled/t1.py
    22222
    
    # -*- coding: UTF-8 -*-
    d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
    
    if 'Michael' in d:
        print 11111
    else:
        print 22222
    
    C:Python27python.exe C:/Users/TLCB/PycharmProjects/untitled/t1.py
    11111
    
    二:是通过dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value:
    
    # -*- coding: UTF-8 -*-
    d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
    
    if d.get('Thomas'):
        print 11111
    else:
        print 22222
    
    C:Python27python.exe C:/Users/TLCB/PycharmProjects/untitled/t1.py
    22222
    
    
    要删除一个key,用pop(key)方法,对应的value也会从dict中删除:
    
    # -*- coding: UTF-8 -*-
    d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
    print d
    d.pop('Bob')
    print d
    
    C:Python27python.exe C:/Users/TLCB/PycharmProjects/untitled/t1.py
    {'Bob': 75, 'Michael': 95, 'Tracy': 85}
    {'Michael': 95, 'Tracy': 85}
    
    
    
    set:
    
    set和dict类似,也是一组key的集合,但不存储value,由于key不能重复,所以,在set中,没有重复的key.
    
    
    要创建一个set,需要提供一个list作为输入集合
    

  • 相关阅读:
    ASP.NET验证控件的使用 拓荒者
    读书笔记:MFC单文档应用程序结构分析 拓荒者
    MFC单文档(SDI)全屏程序的实现 拓荒者
    jQuery的animate函数
    设备尺寸杂谈:响应性Web设计中的尺寸问题
    Yeoman学习与实践笔记
    IE对文档的解析模式及兼容性问题
    推荐给开发和设计人员的iPad应用
    几个移动应用统计平台
    颜色、网页颜色与网页安全色
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13349625.html
Copyright © 2011-2022 走看看