基本数据类型(dict)

万恶之源-基本数据类型(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])
相关文章
相关标签/搜索