20_Python字典总结

字典:

python内置了字典:dic全称dictionary。其他语言中成为map,使用key-value的存储,键-值。具有极快的查找速度
类似与我们查字典,我们要查一个字
1.从第一页往后翻,知道翻到想要的字为止
2.在索引表查对应的码页,然后直接翻到那一页,找到这个字,不会随着字典大小的增加而变慢。

 1 #字典总复习
 2 
 3 '''
 4 python内置了字典:dic全称dictionary。其他语言中成为map,使用key-value的存储,键-值。具有极快的查找速度
 5 类似与我们查字典,我们要查一个字
 6 1.从第一页往后翻,知道翻到想要的字为止
 7 2.在索引表查对应的码页,然后直接翻到那一页,找到这个字,不会随着字典大小的增加而变慢。
 8 '''
 9 dic = {'name':'zhangsan'}
10 
11 
12 #字典的增
13 ##1.通过key增加。如果不存在就添加, 如果存在就覆盖
14 dic['age'] = 20 #如果此键不存在则添加
15 print(dic)    #{'name': 'zhangsan', 'age': 20}
16 
17 dic['age'] = 22 #如果此键存在,则覆盖
18 print(dic)     #{'name': 'zhangsan', 'age': 22}
19 
20 ##2.setdefault  如果存在,无操作,如果不存在就添加
21 dic.setdefault('hobby')
22 print(dic)   #{'name': 'zhangsan', 'age': 22, 'hobby': None}
23 dic.setdefault('hobby','篮球')
24 print(dic)   #{'name': 'zhangsan', 'age': 22, 'hobby': None}  hobby已经存在,所以不操作
25 
26 dic.setdefault('home','中国')
27 print(dic)   #{'name': 'zhangsan', 'age': 22, 'hobby': None, 'home': '中国'}
28 
29 
30 #字典的删操作
31 ###按元素删除
32 dic.pop('hobby')
33 print(dic)   #{'name': 'zhangsan', 'age': 22, 'home': '中国'}
34 dic.pop('xx')
35 print(dic) #KeyError: 'xx'  如果删除不存在的键,将会报错,但是pop给我们提供了容错机制
36 ret = dic.pop('xx','没有此键')
37 print(ret)  #没有此键
38 
39 ###按索引删
40 dic.popitem() #随机删除某个元素
41 print(dic)  #{'name': 'zhangsan', 'age': 22}
42 
43 #字典的改
44 ###按key改,如果key不存在,则添加
45 dic['age'] = 33
46 print(dic)  #{'name': 'zhangsan', 'age': 33}
47 
48 dic.update({'hobby':'computer'})#如果键不存在,则添加
49 print(dic)  #{'name': 'zhangsan', 'age': 33, 'hobby': 'computer'}
50 
51 dic.update({'hobby':'progrem'})#如果键存在,则修改
52 print(dic)  #{'name': 'zhangsan', 'age': 33, 'hobby': 'progrem'}
53 
54 #字典的删
55 ###清空一个字典
56 dic.clear()
57 print(dic)  #{}
58 
59 ###删除一个键值对
60 del dic['hobby']
61 print(dic)  #{'name': 'zhangsan', 'age': 33}
62 
63 ###删除一个字典
64 del dic
65 print(dic)  #NameError: name 'dic' is not defined
66 
67 #字典的查
68 ###按key查
69 print(dic['hobby'])   #progrem
70 
71 ##按key查,查不到,返回提示信息
72 ret = dic.get('xxx','没有此键')
73 print(ret) #没有此键
74 
75 ##遍历所有的key
76 for i in dic:
77     print(i)
78 for i in dic.keys():
79     print(i)
80 ##遍历所有的value
81 for i in dic:
82     print(dic[i])
83 for i in dic.values():
84     print(i)
85 
86 ##遍历所有的键值
87 for k,v in dic:
88     print(k,dic[k])

 

posted @ 2018-02-04 10:17  短毛兔  阅读(224)  评论(0编辑  收藏  举报