字典(dict)
我们可以向字典提供一个数据独有的特性,那么字典就会将这个数据返回给我们
独有的特性专业名词: 键 key
字典中存储的那个数据专业名词: 值 value
-
创建一个字典
1. 创建一个空字典
d1 = {}
2. 创建一个带有数据的字典
d2 = {键1:值1, 键2:值2,键3:值3.....}
键与其所对应的值我们成为字典的键值对,或是字典一项(item)
注意: 键与值都是Python数据类型中的一种(但是键对数据类型是有要求的)
d3 = {110120:'纪洋', 15639:'gudio'}
3. 利用dict()创建字典
(1)d4 = dict(s110120='纪洋',s15639='gudio')
注意: 字典是Python 中唯一的映射型数据
(2)d5 = dict(((110120,'纪洋'),(15639,'gudio')))
-
字典的特性
1. 字典是没有顺序的
2. 字典是可迭代对象
-
字典的访问
1. 语法:
字典的标签[键]
例如:查找字段中键为110120的值
d3 = {110120:'纪洋', 15639:'gudio'}
d3[110120]
2. 修改字典中的键所对应的值
将d3中的键为110120对应的值改为老纪
d3 = {110120:'纪洋', 15639:'gudio'}
d3[110120] = '老纪'
# {110120: '老纪', 15639: 'gudio'}
-
向字典中添加一项
语法:
字典的标签[添加的键] = 键所对应的值
例:
d3 = {110120:'纪洋', 15639:'gudio'}
向字典d3中添加一个键119对应的值为'归叔'
d3[119] = '归叔'
注意: 字典中的每一项中的键必须是唯一的
-
删除字典中的一项
语法: del d3 = {110120:'纪洋', 15639:'gudio'} # 删除创始人gudio的所有信息 del d3[15639]
-
字典独有的方法
1. clear
功能: 清空整个字典
语法: 需要清空的字典的引用.clear()
d3 = {110120:'纪洋', 15639:'gudio'}
# 清空字典d3中的所有项
d3.clear()
2. get
功能: 获取字典中键所对应的值
语法: 字典的引用.get(键[,如果键不在字典中就返回该出对象(默认值是None)])
d3 = {110120:'纪洋', 15639:'gudio'}
# 获取110120键对应的值
d3.get(110120)
3. keys
功能: 直接将字典中的键封装成一个可迭代对象
d3 = {110120:'纪洋', 15639:'gudio'}
# 将字典d3中的所有的键封装成一个可迭代对象
t = d3.keys()
# 遍历t
for i in t:
print(i)
4.values
功能: 直接将字典中的值封装成一个可迭代对象
d3 = {110120:'纪洋', 15639:'gudio'}
# 将字典d3中的所有的值封装成一个可迭代对象
t = d3.values()
# 遍历t
for i in t:
print(i)
5.items
功能: 直接将字典中的项(键值对)封装成一个可迭代对象
d3 = {110120:'纪洋', 15639:'gudio'}
# 将字典d3中的所有的项封装成一个可迭代对象
t = d3.items()
# 遍历t
for i in t:
print(i)
# 增强赋值
for k,v in t:
print(k,v)
6.pop
功能: 删除指定的键
语法: 需要删除项的字典的引用.pop(需要删除项的键[,如果键不存在则返回该对象])
d3 = {110120:'纪洋', 15639:'gudio'}
# 将西的归叔的信息删除
d3.pop(15639)