今日內容:
字典
成對的儲存資料。 以key:value的形式儲存
用{}表示,每一項內容都是key:value, 每項資料之間用逗號隔開
字典中的key是不能重複的。 儲存是依靠著key來計算的。
字典是使用hash演算法計算key的雜湊值. 使用雜湊值來儲存資料
雜湊演算法得到的是一個唯一的數字(可能是正數, 可能是負數, 很大或者很小)
雜湊演算法是無序的
字典中的key必須是可雜湊的, 不可變的就是可雜湊的
字典的value隨便改動
注意: key必須是不可變(可雜湊)的. value沒有要求.可以儲存任意型別的資料
不可變: 字串, 元組, int, bool
可變的: list, dict, set
操作
dic = {}
- 增加
dic[字典中不存在的key] = value # key如果重複了。 就會修改
# # 流程: 1.先判斷key是否存在。 如果存在,就不執行新增, 如果不存在, 執行新增
dic.setdefault((“宮本武藏”, “很牛B”))
# dic.setdefault(“宮本武藏”, “我的宮本很菜”) # 如果key存在了就不會再新增了
- 刪除
pop() 指定某個key刪除
popitem() 隨機刪除
del dic[key] 刪除
clear() 清空
- 修改
dic[key] = value 如果key存在,則value覆蓋
dic.updae(dic2) #把dic2中的內容覆蓋到dic中 #存在則覆蓋,不存在則新增
- 查詢
dic[key] #如果key不存在則報錯
dic.get(‘key’,’返回內容’) #查詢,存在返回value,不存在不報錯,預設返回none
# 流程: 1. 先檢測是否存在key,如果存在,就不執行新增, 如果不存在, 執行新增
# 2. 並且根據你給的key把value查詢出來
setdefault()
- 其他操作
keys() #key的集合
values()# value的集合
items() #鍵值對的集合(key,value)
字典的迭代
for k in dic:
k #key
dic[k]#value