字典是什么??---是一种Key-value型的数据类型。作用可是强大着呢!
它可以实现什么??
--字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,键必须是唯一的,但值则不必。值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。字典是无序的。
info={
'stu1101':'diaolihui',
'stu1102':'xin xin',
'stu1103':'chen chen',
}
一、字典的基本操作
1、增/改数据:
(如果字典中原本有info['stu 1104']='xidada',则为增加数据;若有,但值不是‘xidada’则改为‘xidada’)
info['stu 1104']='xidada'
2、删数据
#方法1:
del info['stu1104']
#方法2:
info.pop('stu1104')
#方法3:
info.popitem()#删除最后一个
3、查数据
#不明确知道是否存在
print(info.get('stu1102'))
#判断是否存在数据
print('stu1105' in info)
>>Flase
4、其他姿势:
(1)
print(info.keys())#打印key值
print(info.value())#打印值
(2)增加一个字典b,并把它合并到info中。
b={
'stu1101':'BBBB',
2:3,
4:5
}
info.update(b)
print(info)
>>{'stu1101': 'BBBB', 'stu1102': 'xin xin', 'stu1103': 'chen chen', 2: 3, 4: 5}
把stu1101的‘diaolihui’改成‘BBB’,后面加了2: 3, 4: 5
即:交叉部分-改,不交叉部分-创建
(3)把字典转成列表
print(info.items())#字典转成列表
(4)初始化一个字典fromkeys
p=dict.fromkeys([1,2,3],'')
print(p)
q=dict.fromkeys([1,2,3],'text')
print(q)
>>{1: '', 2: '', 3: ''}
>>{1: 'text', 2: 'text', 3: 'text'}
扫描二维码关注公众号,回复:
3140375 查看本文章
可以加入数据如:
p=dict.fromkeys([1,2,3],'')
p[1]='ss'
print(p)
>>{1: 'ss', 2: '', 3: ''}
(5)info.setdefault 的用法(不常用)
info.setdefault('stu1101',{'无'})#先去字典取’stu1101‘这个值,若能取得,返回’stu1101‘的值,取不到,把{’无‘}加上
二、多级字典嵌套及其操作
#多级字典
stu_info={
'group1':{'stu01':['diao','山东','20'],
'stu02':['belle','山西','23'],
'stu03': ['cc', '上海', '21']
},
'group2':{'stu04':['chen','新疆','22'],
'stu05':['wang','北京','25'],
'stu06': ['qqq', '河北', '21']
},
'group3':{'stu07':['wu','沈阳','22'],
'stu08':['liu','湖南','25'],
'stu09': ['weiwei', '湖北', '21']
}
改/增数据:
#改数据
stu_info['group1']['stu01'][0]='Diao'
#增加:
stu_info['group1']['stu01'][2]+='岁'
print(stu_info)
2、字典的循环
#字典的循环(推荐)
for i in info:
#print(i)
print(i,info[i])
例子:三级菜单
编辑文章-CSDN博客
https://mp.csdn.net/postedit/79984772