字典
以键值对方式存在的无序数据的组合就是字典
字典的操作
创建字典
1.创建空字典
变量 = {} 或者 变量 = dict()
2.创建多个元素的字典:
方法1:
变量 = {键:值,键:值....}
方法2:
变量 = dict({键:值,键:值....})
方法3:
变量 = dict(键=值,键=值...)
注意:该方式键作为形参名使用不可以添加引号,必须符合变量规则
方法4:
变量 = dict([(键,值),(键,值)...])
变量 = dict([[键,值],[键,值]...])
变量 = dict(((键,值),(键,值)...))
方法5:
变量 = dict(zip((键,键...),(值,值...)))
字典的基本操作
访问字典的元素:
变量[键]
添加字典的元素
变量[新键] = 值
修改字典元素
变量[键] = 新值
删除字典元素
del 变量[键]
字典的序列操作
字典值可以进行一种序列操作:成员检测
值 in 字典
检测一个值是否在字典的键中
值 not in 字典
检测一个值是否不再字典的键中
序列函数
len() 计算字典中元素的长度
max() 获取字典中最大的键
min() 获取字典中最大的值
dict() 创建空字典或者将其他类型转化字典
字典的遍历
1.键的遍历
for 变量i in 字典:
使用i遍历所有的键,有键就可以通过变量访问其值
2.键值遍历
for 变量i,变量j in 字典.items():
使用变量i遍历所有键,通过变量j遍历所有值
字典内涵/字典推导式
1.普通的字典内涵
变量= {key:value for key,value in 字典.items()}
2.带有判断条件的字典内涵
变量= {key:value for key,value in 字典.items() if 条件表达式}
3,多个循环的字典内涵
变量 = {i+x:j+y for i,j in 字典1.items for x,y in 字典2.items()}
4.带有判断条件的多个循环的字典内涵
变量 = {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() 修改字典的中值
格式: 字典.update(键=值)
返回值:None
注意:此处的键作为关键字参数使用,不可以添加''
格式: 字典.update({键:值})
返回值:None