python学习之路02(字典的使用)

字典是什么??---是一种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

猜你喜欢

转载自blog.csdn.net/bellediao/article/details/79962799
今日推荐