字典操作
以键值对方式存在的无序数据的组合就是字典
创建字典
创建空字典
方式1:
变量 = {}
方式2:
变量 = dict()
创建多个元素的字典
方式1:
变量 = {键:值,键:值....}
方式2:
变量 = dict({键:值,键:值....})
方式3:
变量 = dict(键=值,键=值...)
注意:该方式键作为形参名使用,不可以添加引号,必须符合变量规则
方式4:
变量 = dict([(键,值),(键,值)...])
变量 = dict([[键,值],[键,值]...])
变量 = dict(((键,值),(键,值)...))
方式5:
变量 = dict(zip((键,键...),(值,值...)))
字典的基本操作
访问字典元素
变量[键]
添加字典元素
变量[新键] = 值
修改字典元素
变量[键] = 新值
删除字典元素
del 变量[键]
字典的序列操作
成员检测
格式:值 in 字典
检测一个值是否在字典的键中
格式:值 not in 字典
检测一个值是否不再字典的键中
序列函数
len()
计算字典中元素的长度
max()
获取字典中最大的键
min()
获取字典中最大的值
dict()
创建空字典或者将其他类型转化字典
字典的遍历
遍历键
for 变量i in 字典:
#使用i遍历所有的键,有键就可以通过变量访问其值
遍历键和值
for 变量i,变量j in 字典.items():
#使用变量i遍历所有键,通过变量j遍历所有值
字典内涵/字典推导式
普通的字典内涵
变量= {key:value for key,value in 字典.items()}
带有判断条件的字典内涵
变量= {key:value for key,value in 字典.items() if 条件表达式}
多个循环的字典内涵
变量 = {i+x:j+y for i,j in 字典1.items for x,y in 字典2.items()}
带有判断条件的多个循环的字典内涵
变量 = {i+x:j+y for i,j in 字典1.items for x,y in 字典2.items() if 条件表达式}
字典专用函数
clear()
功能:清空字典
格式:字典.clear()
返回值:None
注意:直接改变原有字典
copy()
功能:复制字典
格式:字典.copy()
返回值:新的字典
fromkeys()
功能:使用指定的序列作为键创建字典
格式:字典.fromkeys(序列,值)
返回值:字典
get()
功能:根据键获取指定的值
格式:字典.get(键[,默认值])
返回值:值
注意:如果键不存在,则使用默认值,如果没有默认值则返回None
items()
功能:将字典的键值转化成类似元组的形式方便遍历
格式:字典.items()
返回值:类似元组的类型
keys()
功能:将字典的所有键组成一个序列
格式:字典.keys()
返回值:序列
values()
功能:将字典的所有值组成一个序列
格式:字典.values()
返回值:序列
pop()
功能:移除字典中指定的元素
格式:字典.pop(键[,默认值])
返回值:被移除的键对应的值
注意:如果键不存在,则报错,如果键不存在,默认值设置,则返回默认值
popitem()
功能:移除字典中的键值对
格式:字典.popitem()
返回值:键值对组成的元组
注意:弹一个原字典就少一个,字典为空就不可以弹出,会报错
setdefault()
功能:添加一个元素
格式:字典.setdefault(键,值)
返回值:None
注意:添加是键存在则不进行任何操作,键不存在则添加,添加是不写值,默认None值
update()
功能:修改字典中的值
方式1:
格式: 字典.update(键=值)
返回值:None
注意:此处的键作为关键字参数使用,不可以添加''
方式2:
格式: 字典.update({键:值})
返回值:None