python(3)---dictionary字典
2021-07-15 10:08
标签:view def 删除 add 索引 upd 修改 ext size 1、定义字典 2、字典的增删改查 2.1 增 运行结果: 2.2 改 2.3 删除 两种方式:del 和 pop 2.4 查询 两种方式: 3、字典内置方法 4、遍历字典 运行结果: 5、字典嵌套 python(3)---dictionary字典 标签:view def 删除 add 索引 upd 修改 ext size 原文地址:https://www.cnblogs.com/HathawayLee/p/9536879.html字典和字典操作
1 dic={
2 ‘name‘:‘xiaojun‘,
3 ‘sex‘:‘男‘,
4 ‘height‘:‘185‘,
5 ‘age‘:18,
6 ‘email‘:‘abc@qq.com‘,
7 ‘addr‘:‘火星‘,
8 ‘id‘:1
9 }
1 #add 两种方式
2 stus={}
3 stus[‘name‘]=‘小军‘ #增加
4 stus[‘name‘]=‘海龙‘ #name修改为“海龙”
5 stus.setdefault(‘name‘,‘杨帆‘) #如果key已经存在,就不动它;没有的话,添加
6 stus.setdefault(‘sex‘,‘nan‘)
7 stus.setdefault(‘addr‘,‘beijing‘)
8 stus.setdefault(‘email‘,‘13e@aa.com‘)
9 stus.setdefault(‘phone‘,‘2346465‘)
10 print(stus)
{‘addr‘: ‘beijing‘, ‘sex‘: ‘nan‘, ‘phone‘: ‘2346465‘, ‘name‘: ‘海龙‘, ‘email‘: ‘13e@aa.com‘}
1 #修改 即再次赋值
2 stus={‘addr‘: ‘beijing‘, ‘sex‘: ‘nan‘, ‘phone‘: ‘2346465‘, ‘name‘: ‘海龙‘, ‘email‘: ‘13e@aa.com‘}
3 stus[‘sex‘]=‘nv‘
1 #删 删除不存在的key会报错
2 del stus[‘phone‘]
3 stus.pop(‘age‘)
4 stus.popitem() #随机删除
1 # #查询
2 stus={‘addr‘: ‘beijing‘, ‘sex‘: ‘nan‘, ‘phone‘: ‘2346465‘, ‘name‘: ‘海龙‘, ‘email‘: ‘13e@aa.com‘}
3 print(stus[‘sex‘]) #如果不存在会报错
4 print(stus.get(‘sex‘)) #如果不存在的话,返回none,不会报错
5 print(stus.get(‘sex‘,‘男‘)) #如果sex不存在,返回默认值‘男‘
6 email in stus #email是否存在stus中,返回true或false
1 stus={‘addr‘: ‘beijing‘, ‘sex‘: ‘nan‘, ‘phone‘: ‘2346465‘, ‘name‘: ‘海龙‘, ‘email‘: ‘13e@aa.com‘}
3 print(stus.keys()) #取出所有key
4 print(stus.values()) #取出所有value
5 stus.update({‘money‘:10000}) #更新字典值,如果key存在的话,就更新,不存在的话就添加
1 stus={‘addr‘: ‘beijing‘, ‘sex‘: ‘nan‘, ‘phone‘: ‘2346465‘, ‘name‘: ‘海龙‘, ‘email‘: ‘13e@aa.com‘}
2 for k in stus:
3 print(k,‘===>‘,stus.get(k))
4
5 for k,v in stus.items():
6 print(k,‘==>‘,v)
email ===> 13e@aa.com
sex ===> nan
addr ===> beijing
phone ===> 2346465
name ===> 海龙
email ==> 13e@aa.com
sex ==> nan
addr ==> beijing
phone ==> 2346465
name ==> 海龙
1 all_stus={
2 ‘xiaojun‘:
3 {
4 ‘name‘:‘xiaojun‘,
5 ‘sex‘:‘男‘,
6 ‘height‘:‘185‘,
7 ‘age‘:18,
8 ‘email‘:‘abc@qq.com‘,
9 ‘addr‘:‘火星‘,
10 ‘id‘:1,
11 ‘cars‘:["牧马人",‘911‘,‘野马‘,‘劳斯莱斯‘]
12 },
13 ‘hailong‘:
14 {
15 ‘name‘:‘hailong‘,
16 ‘sex‘:‘男‘,
17 ‘height‘:‘185‘,
18 ‘age‘:12,
19 ‘email‘:‘abc@qq.com‘,
20 ‘addr‘:‘火星‘,
21 ‘id‘:2
22 },
23 ‘yangfan‘:
24 {
25 ‘name‘: ‘hailong‘,
26 ‘sex‘: ‘男‘,
27 ‘height‘: ‘185‘,
28 ‘age‘: 12,
29 ‘email‘: ‘abc@qq.com‘,
30 ‘addr‘: ‘火星‘,
31 ‘id‘: 3,
32 ‘bags‘:{
33 ‘qianbao‘:[‘lv‘,‘ysl‘],
34 ‘beibao‘:[‘coach‘,‘abc‘]
35 }
36 }
37 }
38 all_stus[‘xiaojun‘][‘cars‘].append(‘五菱宏光‘) #给xiaojun添加一个car
39 print(len(all_stus[‘xiaojun‘][‘cars‘])) #统计xiaojun有多少个car len()函数
40 all_stus[‘yangfan‘][‘sex‘]=‘nv‘ #改yangfan的sex
41 print(all_stus[‘yangfan‘][‘sex‘])
42 all_stus[‘yangfan‘][‘bags‘][‘qianbao‘].pop(0) #删除lv
43 all_stus[‘yangfan‘][‘bags‘][‘beibao‘].remove(‘abc‘) #删除abc