字典定义: 定义在{}内,以key:value形式存放, 如{key1: value1, key2: value2....}
注意:key必须是不可变类型. 可变类型不可hash,包含: list, dict, set
不可变类型可hash,包含: int, str, tuple, bool
字典的增删改查:
dic['新key'] = '新值' 简单明了加入key,和值
dic.setdefault('a','name') 往字典里面加key,和值,注意:如果dict中'a'这个key已经存在了. 那么setdefault将返回value,如果'a'这个key不存在,则添加.
dic.popitem() 默认是随机删除,
dic.pop('旧key') 注意:根据key指定删除,返回的是删除key的值,值可重新赋值
del dic['旧key'] 简单明了删除key,和值
dic.clear() 清空字典所有内容
dic['旧key'] = '新值' 修改字典中存在的旧值
dic.update(dic1) 把dic1中的内容更新到dic中. 若key重名. 则修改替换. 若是新key, 则新增.
dic['旧key'] 通过key查找值
dic.get('旧key','默认值') 通过key查找值, 若key不存在,则返回默认值,默认值可自己设定为空则为none可配合计数函数,和for循环
字典的解构:
dic = {"id": 123, "name": 'sylar', "age": 18, "ok": "科比"}
print(dic.keys()) ====>dict_keys(['id', 'name', 'age', 'ok']) 取出字典中所有key注意输出的不是个列表,但是可以当列表用
for a in dic.keys():
print(a) ====>循环取出上面结果中的元素
同上原理 print(dic.values()) =====>取出字典中所有value注意输出的不是个列表,但是可以当列表用
同上原理 print(dic.items()) =====>dict_items([('id', 123), ('name', 'sylar'), ('age',18), ('ok', '科⽐比')]) 取出字典中所有的键值对
for key, value in dic.items():
print(key, value) =====>这个解构,用的公式是a,b=1,2,可循环将字典中的键值对给key,和value
字典的嵌套:
如:dic["children"][1]["age"] ====>取字典children值里的索引位置1的值里age的值