万恶之源-基本数据类型(dict)spa
1. dict(字典)
用大括号{} 括起来. 内部使用key:value的形式来保存数据
{'jay':'周杰伦', "jj":'林俊杰'}
注意:字典的key必须是可哈希的.,不可变的, value 没有限制
不是按照咱们保存的顺序保存的, 无序的code
字典的相关操做:
<1>增长
dic = {"昆凌":"周杰伦的老婆"} # dic['国际章'] = "汪峰的老婆" # print(dic)# 新增 # dic['国际章'] = "雄壮的老外" # 若是key重复了. 会替换掉原来的value dic.setdefault("马蓉", "王宝强的前任老婆") dic.setdefault("马蓉", "宋哲的现任老婆????") # 若是字典中已经包含了这个key. 再也不继续保存 print(dic)
<2>删除blog
dic = {"牌牌":"你去哪里了", "晓雪":"你快回来.", "雪雪": "又走了"} ret = dic.pop("晓雪") # 删除一个元素. 返回这个元素的value值 print(ret)
dic = {"牌牌":"你去哪里了", "晓雪":"你快回来.", "雪雪": "又走了"} del dic["雪雪"] print(dic)
dic = {"牌牌":"你去哪里了", "晓雪":"你快回来.", "雪雪": "又走了"} ret = dic.popitem() # 返回给你的是一个元组. print(ret) print(dic) 随机删除
# 清空字典中的全部内容 dic.clear()
<3>改get
用key去修改it
dic = {"id":1, 'name':'李嘉诚', 'money':10000000} # 李嘉诚赔了500 dic['money'] = dic['money'] - 500 # 用key去修改 print(dic)
dic1 = {"李晨":"范冰冰", "邓超":"孙俪", "王祖蓝":"李亚男"} dic2 = {"李晨":"张馨予", "郑凯":"baby", "王宝强":"马蓉"} dic1.update(dic2) # 把dic2中的内容更新到 dic1 , 若是存在了key. 替换. 若是不存在,添加 print(dic1) print(dic2)
<4>查for循环
dic = {"及时雨":"宋江", "小李广":"花荣", "黑旋风":"李逵", "易大师":"剑圣"} print(dic["易大师是个脑残"]) # 查询, 若是key不存在,报错
get的查
dic = {"及时雨":"宋江", "小李广":"花荣", "黑旋风":"李逵", "易大师":"剑圣"} print(dic.get("易是")) # 若是key不存在. 返回None
get的查
dic = {"及时雨":"宋江", "小李广":"花荣", "黑旋风":"李逵", "易大师":"剑圣"} print(dic.get("易是", "余小C")) #能够给出一个默认值. 当key不存在的时候返回默认值余小C
2.字典的经常使用操做class
1. keys() 返回全部字典的key的集合(高仿列表)date
dic = {"及时雨":"宋江", "易大师":"剑圣", "维恩":"暗影猎手"} for key in dic.keys(): # 能够进行迭代循环 print(key)
2. values() 返回全部的value的集合循环
dic = {"及时雨":"宋江", "易大师":"剑圣", "维恩":"暗影猎手"} for value in dic.values(): print(value)
3. items() 返回键值对. 元组数据类型
dic = {"及时雨":"宋江", "易大师":"剑圣", "维恩":"暗影猎手"} for k, v in dic.items(): print(k , v)
解构,解包
a, b = (1, 2) print(a) print(b)
3.字典的嵌套
dic = { "name":"汪峰", "age": 58, "wife":{ "name":"国际章", "salary": 180000, "age": 37 }, "children":[ {"name":"老大", "age": 18}, {"name":"老二", "age": 118} ] } print(dic["children"][1]["age"]) print(dic["wife"]['salary'])
4.字典的for循环
dic = {1: 'a', 2:'b', 3:'c'} for a in dic: # 直接循环字典.拿到的是key print(a) print(dic[a])