dict(字典)跟set(集合)很像,不過dict(字典)採用的元素儲存方式是以 「key:value」 成對的方式來儲存,其中key代表的是 關鍵字 ,而value代表的是 值。在dict(字典)中,key必須是唯一的,但是值可以是重複的。
換一種方式思考,當我們背英文單字的時候,一個單字一定會有個相對應的解釋,但是許多單詞的意思可能是一致的,這樣就大概就了解了吧(應該吧?
字典是使用大括號來表示,其中key和value可以是 任意型別 ,如果要建立空字典可以使用 {}
或是 dict()
注意!當dict(字典)中輸入重複的key(關鍵字),將由後者(較新)的取代前者
test1 = {'Apple':28000, 'Acer':22000, 'Asus':38625, 'Apple':25900}
print(test1)
輸出結果:
{'Apple': 25900, 'Acer': 22000, 'Asus': 38625}在這段輸出中我們可以發現後面的Apple重新定義了值,因此前面的值就被取代了
{'蛋餅':20, '豆漿':15, '紅茶':15, '起司蛋餅':25, '豬排蛋餅':28, '蔬菜蛋餅':25 }
在這個範例中,我們發現了豆漿跟紅茶的價格是一致的,而起司蛋餅與蔬菜蛋餅的價格也是一致的,這說明了兩件事, 第一,豬排比較貴,第二 物品對應的值 可以是重複的 。我想平常的狀況應該一個物品不會同時對應兩個價錢吧?
為了防止 世界被破壞 出現重複的key(關鍵字),因此dict(字典)也不允許資料可變更的容器放入key這個元素中這點跟set(集合)蠻像的,然而value(值)並 不受此影響 ,因為是可變更的。
剛我們提到了key必須是唯一的不可重複,因此我們可以利用這種特性,方便操作index(索引)。
使用索引符號 []
取值
testdict1 = {'蛋餅':20, '豆漿':15, '起司蛋餅':25, '蔬菜蛋餅':25 } #建立一個字典
testdict1['豆漿'] = 30 #重新賦予'豆漿'對應的值
testdict1['紅茶'] = 20 #新增一個元素
print(testdict1)
輸出:
{'蛋餅': 20, '豆漿': 30, '起司蛋餅': 25, '蔬菜蛋餅': 25, '紅茶': 20}