Python修行之Dict初識(一)
阿新 • • 發佈:2018-08-19
name 鍵值 可變 語句 ppi iter rom ping The 字典全稱(Dictionaries)
字典為非線性結構
類似Dict稱為k-v對、全名為:key - value鍵值對的數據的集合
dict是可變的、無序的、key不重復(去重)
*key必須可以hash
*set可稱為dict的簡化版
dict是一個個kv對,其中k一定不相同,keys可以當set用、如果value可hash,那麽items可以當set用
字典dict定義 初始化
d = dict() 或者d = {} dict(**kwarge)使用name = value對構造字典,不過可叠代對象的元素必須是一個二元結構 dict(iterable,**kwary)可用叠代對象和name = value對構造字典,不過可叠代對象的元素必須是一個二元結構 d = dict(((1,‘a‘),(2,‘b‘)))或者 d = dict(([1,‘a‘],[2,‘b‘]))(二元組) dict(mapping,**kwarg)使用一個字典構建另一個字典*含有引用類型,註意結果 d = {‘a’:10,‘b‘:20,‘c‘:None,‘d‘:[1,2,3]} #常用構建字典方式 類方法dict.fromkeys(iterable,value) d = dict.fromkeys(range(5)) d = dict.fromkeys(range(5),0) 當iterable的key與kwary的值相同時,後面的value會覆蓋前面的value
字典元素的訪問
*d[key]
返回key對應的value
key不存在拋出KeyError異常
*get(key[,default])
返回key對應的value
key不存在時返回缺省值,如果沒有設置缺省值就返回None
setdefault(key[,default]
返回key對應的值value
key不存在,添加kv對,value設置為default,並返回default,如果default沒有設置,缺省為None
字典增加和修改
d[key] = value 將key對應的值修改為value key不存在添加新的kv對 update([other]) - >None 使用另一個字典的kv對更新本字典、 key不存在,就添加 key存在,覆蓋已經存在的key對應的值 就地修改 *當key為數字,默認無法添加。需使用二元組方式,或字典方式添加
字典刪除
pop(key[,defaulf])
key存在,移除它,並返回它的value
key不存在,返回給你的default
default未設置,key不存在則拋出keyError異常
popitem()
移除並返回一個任意的鍵值對
字典empty,拋出KeyError異常
clear()
清空字典
del語句
刪除非value本事,而是value的引用計數。當引用計數歸零時,內存會自動回收。
Python修行之Dict初識(一)