字典:
python内置了字典:dic全称dictionary。其他语言中成为map,使用key-value的存储,键-值。具有极快的查找速度
类似与我们查字典,我们要查一个字
1.从第一页往后翻,知道翻到想要的字为止
2.在索引表查对应的码页,然后直接翻到那一页,找到这个字,不会随着字典大小的增加而变慢。
#字典总复习 '''
python内置了字典:dic全称dictionary。其他语言中成为map,使用key-value的存储,键-值。具有极快的查找速度
类似与我们查字典,我们要查一个字
1.从第一页往后翻,知道翻到想要的字为止
2.在索引表查对应的码页,然后直接翻到那一页,找到这个字,不会随着字典大小的增加而变慢。
'''
dic = {'name':'zhangsan'} #字典的增
##1.通过key增加。如果不存在就添加, 如果存在就覆盖
dic['age'] = 20 #如果此键不存在则添加
print(dic) #{'name': 'zhangsan', 'age': 20} dic['age'] = 22 #如果此键存在,则覆盖
print(dic) #{'name': 'zhangsan', 'age': 22} ##2.setdefault 如果存在,无操作,如果不存在就添加
dic.setdefault('hobby')
print(dic) #{'name': 'zhangsan', 'age': 22, 'hobby': None}
dic.setdefault('hobby','篮球')
print(dic) #{'name': 'zhangsan', 'age': 22, 'hobby': None} hobby已经存在,所以不操作 dic.setdefault('home','中国')
print(dic) #{'name': 'zhangsan', 'age': 22, 'hobby': None, 'home': '中国'} #字典的删操作
###按元素删除
dic.pop('hobby')
print(dic) #{'name': 'zhangsan', 'age': 22, 'home': '中国'}
dic.pop('xx')
print(dic) #KeyError: 'xx' 如果删除不存在的键,将会报错,但是pop给我们提供了容错机制
ret = dic.pop('xx','没有此键')
print(ret) #没有此键 ###按索引删
dic.popitem() #随机删除某个元素
print(dic) #{'name': 'zhangsan', 'age': 22} #字典的改
###按key改,如果key不存在,则添加
dic['age'] = 33
print(dic) #{'name': 'zhangsan', 'age': 33} dic.update({'hobby':'computer'})#如果键不存在,则添加
print(dic) #{'name': 'zhangsan', 'age': 33, 'hobby': 'computer'} dic.update({'hobby':'progrem'})#如果键存在,则修改
print(dic) #{'name': 'zhangsan', 'age': 33, 'hobby': 'progrem'} #字典的删
###清空一个字典
dic.clear()
print(dic) #{} ###删除一个键值对
del dic['hobby']
print(dic) #{'name': 'zhangsan', 'age': 33} ###删除一个字典
del dic
print(dic) #NameError: name 'dic' is not defined #字典的查
###按key查
print(dic['hobby']) #progrem ##按key查,查不到,返回提示信息
ret = dic.get('xxx','没有此键')
print(ret) #没有此键 ##遍历所有的key
for i in dic:
print(i)
for i in dic.keys():
print(i)
##遍历所有的value
for i in dic:
print(dic[i])
for i in dic.values():
print(i) ##遍历所有的键值
for k,v in dic:
print(k,dic[k])