Python字典可存儲任意類型對象,如字符串、數字、元組…… 優勢:取值方便,速度快數組
1,建立字典性能
字典由鍵(key)和對應值(value)成對組成。字典也被稱做關聯數組或哈希表。基本語法以下:ui
dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}spa
注意:
每一個鍵與值用冒號隔開(:),每對用逗號,每對用逗號分割,總體放在花括號中({})。
鍵必須獨一無二,但值則沒必要。
值能夠取任何數據類型,但必須是不可變的,如字符串,數組或元組。code
2,訪問字典中的值對象
print(d['key']) 若是寫了不存在的值會報錯blog
print(d.get('key')) 若是寫了不存在的值,返回Noneci
print(d.get('key','not find ')) 若是找不到存在的值,返回 「not find」字符串
print(d.keys()) #獲取全部的key 值
print(d.values()) #獲取全部的value 值
if 'key' in d: #判斷key是否存在
print('key')
for k,v in d.items(): #遍歷字典
print(k,v)
無須轉換成list 格式,保留了字典原有的特性
for k in dict:
print(k,dict[k])
print(k,dict.get(k)) 取值速度快,性能好
3,修改字典get
d['key'] = value key 存在即修改,key不存在即新增
d.setdefault('key',value) 只能新增
4,刪除字典元素
d.pop('key') 必需要傳值,由於字典是無序的
d.popitem() 隨機刪除一個
del d['key']
d.clear() 清空字典
5,其餘
print(dict.items()) 輸出一個list格式(非真正意義上的list)
print(list(dict.items())) 把字典的key 和 value 轉成一個多維list

輸出結果:

len
(
dict
):計算字典元素個數,即鍵的總數。
str
(
dict
):輸出字典可打印的字符串。
type
(variable):返回輸入的變量類型,若是變量是字典就返回字典類型。
if 'bananas' in fruits:
fruits['bananas'] += 1
else :
fruits['bananas'] = 1
查看「bananas」鍵是否在字典中,因爲如今沒有這個鍵,因此將它的值初始化爲1,這樣就能杜絕出行keyerror的可能性
用「not in 」替換 「in」
if 'bananas' not in fruits:
fruits['bananas'] += 0 #初始化,若是須要
fruits['bananas'] += 1
使用setdefault 方法
for letter in word:
if letter in vowels:
found.setdefault(letter,0)
found[letter] += 1
setdefault 能夠保證把一個不存在的鍵初始化爲一個指定的默認值,或者什麼也不作(也就是說,已有的鍵的關聯值將保持不變)
訪問一個鍵以前,能夠經過確保字典中的每一個鍵都有一個關聯值來避免keyerror。儘管這裏in和not in 操做符能夠提供幫助,不過更成熟的技術是使用setdault 方法