Python 字典方法

dic.get(key)

  1. 如果dic中没有key,返回None;
  2. 索引取值没有key,则会报错
>>> dic = {'a': 'AAAA', 'b': 'BBBB', 'c':'CCCC'}
>>> dic.get('a')
 'AAAA'
>>> dic.get('d')
>>> dic.get()
 Traceback (most recent call last):
   File "<input>", line 1, in <module>
 TypeError: get expected at least 1 argument, got 0

dic.values() dic.keys() dic.items()

  1. 返回值的类型分别为:dic_values dic_keys dic_items
  2. items返回的每一项元素是(key, value)
>>> dic = {'a': 'AAAA', 'b': 'BBBB', 'c':'CCCC'}
>>> type(dic.values())
 <class 'dict_values'>
>>> type(dic.keys())
 <class 'dict_keys'>
>>> type(dic.items())
 <class 'dict_items'>
>>> dic.items()
 dict_items([('a', 'AAAA'), ('b', 'BBBB'), ('c', 'CCCC')])

dic.pop(key)

  1. 必传参数为dic的键key
  2. 如果key不存在则报错;
>>> dic = {'a': 'AAAA', 'b': 'BBBB', 'c':'CCCC'}
>>> dic.pop('a') #存在的键'a'
 'AAAA'
>>> dic.pop('d') #不存在的键'd'
 Traceback (most recent call last):
   File "<input>", line 1, in <module>
 KeyError: 'd'

dic.popitem()

  1. 不用传参数;
  2. 内部选对dic进行了items()方法转化,然后使用类似于列表的pop()方法取值;
>>> dic = {'a': 'AAAA', 'b': 'BBBB', 'c':'CCCC'}
>>> dic.popitem()
 ('c', 'CCCC')

dic.update(dict)

  • dicdict字典合并,若dict中的keydic中的key有冲突的,将会将对应的值value更新为dict中的值value
>>> dic = {'a':'AAAA'}
>>> dic.update({'b':'BBBB'})
>>> dic
 {'a': 'AAAA', 'b': 'BBBB'}
>>> dic.update({'a':'aaaa'})
>>> dic
 {'a': 'aaaa', 'b': 'BBBB'}

dict.fromkeys()

  • dict指的是类class,可以将列表转换成字典,默认值valueNone,可通过设置参数修改,但只能统一修改值value
>>> dict.fromkeys(xlist)
 {'a': None, 'b': None, 'c': None}
>>> dict.fromkeys(xlist, '111')
 {'a': '111', 'b': '111', 'c': '111'}

dic.setdefault(key)

  1. 如果dic中有对应的key,返回对应的value,如果没有对应的key,则添加此key,且对应的value设为None;
  2. 如果dic中没有键key,可以再后面加上值value,则会在dic中添加新的键值对
  3. 如果dic含有key,再后面加上值value,并不会更新dic中的值,原值不变
>>> dic = {'a': 'AAAA', 'b': 'BBBB', 'c':'CCCC'}
>>> dic.setdefault('a')
 'AAAA'
>>> dic
 {'a': 'AAAA', 'b': 'BBBB', 'c': 'CCCC'}
>>> dic.setdefault('d')
>>> dic
 {'a': 'AAAA', 'b': 'BBBB', 'c': 'CCCC', 'd': None}
>>> dic.setdefault('d', 'dddd')
>>> dic
 {'a': 'AAAA', 'b': 'BBBB', 'c': 'CCCC', 'd': None}
>>> dic.setdefault('f', 'ffff')
 'ffff'
>>> dic
 {'a': 'AAAA', 'b': 'BBBB', 'c': 'CCCC', 'd': None, 'f': 'ffff'}
>>> dic.setdefault('a','321')
 'AAAA'
>>> dic.setdefault('g','321')
 '321'

如有出错,欢迎留言,我会尽快修改

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 字典dict python内置了字典,使用键-值(key-value)存储。键必须是唯一的,但值则不必。特点是速度...
    光刃小刀阅读 2,322评论 0 0
  • 1.clear( ) 删除所有字典项,什么都不返回,None。用处:当x和y都指向同一个字典时,通过x={}来清空...
    Wayne_Dream阅读 265评论 3 0
  • 先来安利一下:字典的键必须是可哈希的。(通俗理解就是不可变的,比如,int,str,tuple.因为这样就可以将你...
    小学弟_阅读 727评论 0 0
  • 1. 字典介绍 2. 字典的基本操作2.1. 字典的定义2.2. 字典元素的访问2.3. 字典的增删改 3. 字典...
    静堂先生阅读 346评论 0 0
  • 渐变的面目拼图要我怎么拼? 我是疲乏了还是投降了? 不是不允许自己坠落, 我没有滴水不进的保护膜。 就是害怕变得面...
    闷热当乘凉阅读 4,362评论 0 13