相當於其它語言裏的Map,PYTHON用字典來表示這種Key-value的數據結構
一,創建字典的方式:
1。直接定義
字典={key1:value1, key2:value2, ...... keyn: valuen}
phoneNumber = {'liubei':'2341', 'guanyu':'23432','zhangfei':'4444444'}
2. dict 函數
items = [('name','wang'),('age',12)]
d = dict( items ) #通過(key,value)序列來定義
d2 = dict(name = 'wang', age = 12 ) #通過傳遞函數參數來定義
二,基本操作
類似於序列,但是比序列效率高,key的類型可以是任意的不可變類型
len(d) 返回item的數量
d[k] 返回k對應的value
d[k]=v k對應的值成爲v
del d[k] 刪除k項
k in d 檢查d中是否含有鍵爲k的項
三,字典的方法
1。clear 清除字典中所有項
2。copy 字典的淺拷貝,只複製引用
deepcopy 字典的深拷貝,複製一分內容,另一個變量指向它
3。fromkeys 使用給定的鍵建立一個新的字典,每個鍵的默認值都是None
{}.fromkeys(['name','age']) 或 dict.fromkeys(['name','age'])
指定默認值 {}.fromkeys(['name','age'],‘(unknown)’)
4。get 訪問字典的方法,在key不存在時不會出錯
5。 has_key(key) 相當於k in d
6。 items 和 iteritems 返回字典所有項的列表。
iteritems 返回一個迭代器對象。
it = d.iteritems()
list(it) #顯示
7。keys 和 iterkeys 將鍵以列表形式返回
8。pop 返回一個鍵的值,然後刪除這個項
d.pop('name')
9. popitem() 彈出一個隨機的項,並在字典中刪除
d.popitem()
10. values 和itervalues 將value以列表形式返回
11. update 可以用一個字典更新另外一個字典
四,遍歷一個字典
d= {'x':1, 'y':2}
for key in d :
print key, '==>', d[key]
for key,value in d.items():
print key,'==>' , value