[Python]学习基础篇:字典

发布时间:2019-07-22 09:57:32编辑:auto阅读(1243)

    字典

    字典这个数据结构的功能和它的名字一样,根据key得到value值。

    • 字典的定义 
      方法: 
      dict={‘key1’:value1,’key2’:value2……..} 
      对于字典,key值在字典中不能重复,若出现重复,将更改原有的key对应的value值。

    • 字典的基本操作 
      使用字典:dict={‘key1’:1,’key2’:2,’key3’:3,’key4’:4} 
      (1).修改字典 
      方法:dict[key]=new_value

    >>>dict['key3']='jdieiq'
    >>>dict['key3']
    'jdieiq'

    (2).删除字典元素 
    方法1:del dict[‘key’] 
    若无没有key时,删除整个字典,该方法与dict.clear()的区别是del删除整个字典,字典就不存在了,而clear方法知识清空字典,字典对象是存在的。

    >>>del dict['key3']
    >>>dict
    {'key1': 1, 'key2': 2, 'key4': 4}

    方法2:dict.pop(‘key’) 
    此方法弹出一个key值所对应的value的键值对,若key无时,弹出字典中的最后一个键值对。

    >>>dict.pop('key2')2>>>dict
    {'key1': 1, 'key4': 4}

    (3).字典的长度 
    方法:len(dict) 
    对于求长度的方法,无论是列表,元组还是字典都是用len()函数

    • 字典的方法 
      使用字典:dict={‘key1’:1,’key2’:2,’key3’:3,’key4’:4} 
      (1).clear()方法 
      作用:清空字典,无返回值 
      (2).copy()方法 
      作用:浅复制一个字典 
      浅复制:指在复制后,复制后的字典值改变,不影响原字典的值

    >>>dict1=dict.copy()
    >>>dict1
    {'key4': 4, 'key3': 3, 'key2': 2, 'key1': 1}
    >>>dict1['key3']='fjiew'>>>dict1
    {'key4': 4, 'key3': 'fjiew', 'key2': 2, 'key1': 1}
    >>>dict
    {'key1': 1, 'key2': 2, 'key3': 3, 'key4': 4}

    (3).fromkeys(seq[,value])方法 
    作用:返回一个以seq作为key值的字典,若value不存在时,创建的字典的value值为None,若value存在是创建的字典key值所对应的的value值为value. 
    (4).get(key) 
    作用:返回key值所对应的value值,若key不存在时,返回空,不同于dict[key]方法,dict[key]方法,若key不存在时,返回错误。

    >>>dict.get('key3')3>>>dict.get('key8')
    >>>dict['key8']
    Traceback <most recent call last:>
        File "<stdin>",line 1,in <module>
    KeyError:'key8'

    (5).setdefault(key,default=None)方法 
    作用:此作用和get的作用一样,但是不一样的是key值不存在时,将key存进字典并赋值为None

    >>>dict.setdefault('key8',default=None)
    >>>dict
    {'key1': 1, 'key2': 2, 'key3': 3, 'key4': 4,'key8':None}

    (6).items()方法 
    作用:以列表的形式返回可遍历以键值为元素的元组,一个键值对为一个元组,左右元组组成一个列表

    >>>dict.items()
    dict_items([('key1',1),('key2',2),('key3',3),('key4',4),('key8',None)])

    (7).keys()方法和values()方法 
    作用:分别返回key列表和value列表

    >>>dict.keys()
    dict_keys(['key1','key2','key3','key4','key8'])
    >>>dict.values()
    dict_values([1,2,3,4,None])

    (8).update(new_dict)方法 
    作用:将一个新的dict_new跟新到dict中

    >>>dict1={'1':2,'3':4}
    >>>dict.update(dict1)
    >>>dict
    {'key1': 1, 'key2': 2, 'key3': 3, 'key4': 4,'1':2,'3':4}
    • 字典和列表的区别

      dict的特点: 
      查找和插入的速度极快,不会随着key的增加而增加 
      需要占用大量的内存,内存浪费多 
      list的特点: 
      查找和插入时间随着元素的增加而增加 
      占用空间小,浪费内存小


关键字