字典
字典 dict
字典的特性就是查询快
键值对 key value
字典的key是不可变的,value是可变的
dic={'key':'value',11:'12',True:[1,2],(1,):'你好',2.5:666,'22':{}}
# print(dic)
字典的增加
1 dic1={'12':'糖果'} 2 #方法1 dic[key]=value 3 #如果key不存在就新增,key已存在就修改 4 # dic1[12]='果子' 5 # print(dic1) 6 # dic1[12]=[123] 7 # print(dic1)
#方法2 dic.setdefault(key,value) #如果key不存在,就新增;key已存在,就不变,如果只写key就是查询 # dic1.setdefault(13,13.14) # print(dic1) # dic1.setdefault(13,12345) #不变 # print(dic1) # print(dic1.setdefault(13)) #查询
# 方法3 迭代添加 dic.update() # dic1.update({"蛮王":"蛮三刀"}) #key不存在,就新增 # print(dic1) #dic.update({'12':'蓝胖子'}) #key存在,就更新
字典的删除
dic2={'12':'糖果',13:'水枪',True:'right'}
方法1 dic.pop(key)
dic2.pop(13) #删除
print(dic2)
# print(dic2.pop(13)) #返回的是对应的值
方法2 del dic[key]
del dic2['12']
print(dic2)
方法3 随机删除 popitem()
# dic2.popitem()
# print(dic2.popitem())# 返回的是一个元组
方法4 清空# dic.clear()
#dic2.clear()
# print(dic2)
字典的修改
dic4={'及时雨':'宋江','小李广':'华容','花和尚':'鲁智深','豹子头':'100'}
# dic4['及时雨']='xxx'
# print(dic4)
# dic4['豹子头']=dic4['豹子头']+100 #同类型的才可相加
# dic4['豹子头']=dic4['豹子头']+'100'
# print(dic4)
字典的查询
# print(dic4['豹子头']) # print(dic4['豹子头1'])#key不存在,就会报错 # print(dic4.get('及时雨')) # print(dic4.get('及时雨1')) #key不存在,返回none # print(dic4.get('及时雨'),'key存在') # print(dic4.get('及时雨1'),'key不存在') #可以自定义返回值,key存在无影响,不存在,返回定义的值 # print(dic4.setdefault('花和尚'))
字典的其他操作
dic5={'及时雨':'宋江','小李广':'华容','花和尚':'鲁智深','豹子头':'林冲'}
# print(dic5.keys())#拿到所有的key
# print(dic5.values())#拿到所有的value
# print(dic5.items()) #拿到所有的键值对(key+value) 列表的形式[(),()]
# for key in dic5.keys():
# print(key)
# for value in dic5.values():
# print(value)
# for item in dic5.items(): # () () ()
# print(item)
# for k,v in dic5.items():
# print(k,v)
字典的嵌套
dic6 ={ "name":"汪峰", "age":50, "汪峰的老婆":{ 'name':'章子怡', "age" :50 }, '汪峰的孩子':[ {"name":'第一个毛孩子',"age":16}, {"name": '第二个毛孩子', "age": 6} ] } # 练习 # 1.给汪峰添加一个工资 # dic6['工资']=10000 # print(dic6) # # 2.给汪峰的老婆添加一个爱好 # dic6['汪峰的老婆']['爱好']='shopping' # print(dic6) # # 3.给汪峰的孩子,添加一个第三个毛孩子 # dic6['汪峰的孩子'].append({'name':'第三个毛孩子','age':5}) # print(dic6)
浙公网安备 33010602011771号