字典:一种key-value 的数据类型,使用就想我们上学用的字典,通过笔划、字母来查对应页的详细内容。
特性:
key-value结构
key必须可以hash、且必须为不可变数据类型、必须唯一
可以存放任意多个值、可修改、可以不唯一
无序
查找快速
语法:
info = {'a': 1, 'b': 2, 'c': 3}
增加:
info['chris'] = '小学生'
修改:
info['a'] = '社会人'
#存/取
info_dic={'name':'egon','age':18,'sex':'male'}
# print(info_dic['name11111111'])#找不到则报错了
print(info_dic.get('name',None))
print(info_dic.get('name222222',None))#get方法找不到不报错,可以自己设定默认值
info_dic.pop('age') #删除并返回值
info_dic.pop('age',None) #删除age,没有则返回None
info_dic.popitem() #随机删
del info_dic['name'] #删除key
info_dic={'name':'egon','age':18,'sex':'male'} print(info_dic.keys()) #打印所有的key print(info_dic.values()) #打印所有的value(值) print(info_dic.items()) #生成列表 #打印key和value for key in info_dic: #快速查找 print(key,info_dic[key]) for k,v in info_dic.items(): #这种比较慢 print(k,v) #长度 print(len(info_dic)) print('name' in info_dic) print('name' in info_dic.keys()) print('egon' in info_dic.values()) print(('name','egon') in info_dic.items()) #掌握 info_dic.update({'a':1,'name':'Egon'}) #没有则添加,有则覆盖 print(info_dic) info_dic['hobbies']=[] #添加一个新键值,值为空列表 info_dic['hobbies'].append('study') #把study加入到hobbies的值中 info_dic['hobbies'].append('read') print(info_dic) #setdefault:key不存在则设置默认值,并且放回值默认值 #key存在则不设置默认,并且返回已经有的值 print(info_dic.setdefault('name',[1,2])) print(info_dic.setdefault('hobbies',[1,2,3,4,5])) print(info_dic) #了解 d=info_dic.fromkeys(('name','age','sex'),None) print(d) d2=dict.fromkeys(('name','age','sex'),'keys') print(d2) info=dict(name='haiyan',age=18,sex='male') print(info) info=dict([('name','haiyan'),('age',18)]) print(info)