一.概念
1.无序可变序列
2.形式{键:值}
3.优点
- 字典在内部维护的哈希表使得检索操作非常快
- 不太在乎元素内部的先后顺序
4.键值必须可哈希(不可变),不允许重复
adict={'name':'liuzun','sex':'nan','name':'zhangjiayou'}
print(adict) #输出结果:{'name': 'zhangjiayou', 'sex': 'nan'},liuzun被覆盖了
二.字典的创建与删除
1.创建
- aDict={"name" : "liuzun","sex" : "nan"}
- dict(zip(keys,values)
- dict.fromkeys(['name','age','sex'])
2.删除
del直接删除字典
三.字典元素的访问
- 根据键值访问:aDict['name']
- get()方法访问:aDict.get('sex',元素不存在的返回值)
- setdefault()方法,返回键对应的值,如果元素不存在就增加这个元素,并设置对应键的值 aDict.setdefault(键)或aDict.setdefault(键,值)
遍历
- 遍历键和值 for item in aDict.items()
- 遍历键 for item in aDict.keys()/aDict
- 遍历值 for item in aDict.values()
四.字典元素的添加修改与删除
1.添加与修改
- aDict['age']=39,若键值对存在表示修改,若不存在则表示添加
- update()方法:合并两个字典若存在相同键,则以添加键的值为主
adict={'name':'liuzun','sex':'nan'}
bdict={'name':'张嘉佑','age':20}
adict.update(bdict)
print(adict) #{'name': '张嘉佑', 'sex': 'nan', 'age': 20}
2.删除
- del aDict['age']
- pop():弹出指定键的值
- popitem():弹出最后一个键对应的值
adict={'name':'liuzun','sex':'nan'}
bdict={'name':'张嘉佑','age':20}
adict.update(bdict)
print(adict)
print(adict.pop('age'))
print(adict.popitem())