字典

字典 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)

 

posted @ 2022-06-24 21:43  爱coding的果妈  阅读(11)  评论(0)    收藏  举报