字典:一种可变容器模型,且可存储任意类型对象,如字符串、数字、元组等其他容器模型。

字典由键和对应值成对组成 {key:value,key1,value1}, 例如:

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'}

注意:

  (1)每个键与值用冒号隔开(:),每对用逗号,每对用逗号分割,整体放在花括号中({})。
  (2)键必须独一无二,但值则不必。
  (3)值可以取任何数据类型.

字典相关操作:

1.增

dic = {'中国': '汉语', '美国': '英语'} dic['日本'] = '日语' dic['韩国'] = '韩语'
print(dic) #setdefault()
dic.setdefault('韩国', '韩语') dic.setdefault('英国') dic.setdefault('中国', '还有英语') print(dic)

2.删

dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'} dic.pop('韩国')  #根据指定key, 删除key:value
dic.popitem() #删除最后一项. python的早期版本中,字典是无序的,随机删除一项.
del dic['美国'] #清空
print(dic)

3.改

dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'} dic['中国'] = '汉语,还有其他语言'
print(dic)#{'中国': '汉语,还有其他语言', '美国': '英语', '韩国': '韩语'}

4.查

dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'} #1.dic[key]
print(dic['中国']) #汉语
print(dic['日本']) #KeyError: '日本' 报错,'日本'key不存在

#2.dic.get(key, 值)
print(dic.get('中国')) #汉语
print(dic.get('日本')) #None 当key不存在返回None
print(dic.get('日本', '没有这个')) #当key不存在,返回第二个参数,第二个参数默认为None

##3.dic.setdefault(key, value) ## 第一个功能是添加(当key不存在). ## 第二个功能是查询(根据给的key查询) ##执行流程:判断给的key是否存在,如果存在,就不执行新增流程,直接查询出这个key对应的value. ## 如果key不出那种,先执行新增操作,再使用key吧对应的value查询出来.
ret = dic.setdefault('日本', '日语') print(ret) #日语
ret1 = dic.setdefault('美国', '汉语') print(ret1) #英语

 

字典遍历:

1.直接使用for遍历

dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'} for key in dic:#直接循环字典拿到的是key,有key直接拿value
    print(key)  #取出来key
    print(dic[key])#根据key拿对应的value
''' 中国 汉语 美国 英语 韩国 韩语 '''

2.使用items()直接拿到key,value

dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'} for k, v in dic.items(): print(k, v) ''' 中国 汉语 美国 英语 韩国 韩语 '''

 

字典的其他操作

1.keys()获取到所有的键

dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'} for k in dic.keys(): print(k) ''' 中国 美国 韩国 '''

 

2.value()获取到所有的值

dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'} for v in dic.values(): print(v) ''' 汉语 英语 韩语 '''

 

3.items()获取到所有键值对

dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'} for  k, v in dic.items(): print(k, v) ''' 中国 汉语 美国 英语 韩国 韩语 '''

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄