字典屬于映射類資料,由鍵和值來構成是一種可變容器模型,且可存儲任意類型對象。字典的每個鍵值對用冒号分割,每個鍵值對之間用逗号分割,用花括号 { }表示。字典資料的存儲也是無序的,可以通過通路key來得到value。
字典的建立
1、a = {1:‘a’,2:‘b’,3:‘c’,4:‘d’,5:‘e’} #注意,這裡key用數值型是可以的!項目中這種方法是比較常用的。

2、b = dict(((1,‘a’),(2,‘b’),(3,‘c’),(4,‘d’),(5,‘e’))) #這裡要注意dict()隻允許傳入一個參數,是以要把裡面的元素括起來,否則報錯。而且,這裡的key也是可以使用數值型的!
3、c = dict(a1=‘a’,a2=‘b’,a3=‘c’,a4=‘d’,a5=‘e’)
注意這裡我是用的a1、a2、a3、a4、a5作為key的,為什麼沒有直接用1、2、3、4、5呢?當然是不允許了,python規定當用等号這種方式的時候,key不能是數字類型(包括int和float),因為等号在這裡依舊是指派的意思(我猜的),把字元串指派給了常量再操作的時候會引起混亂(如果1 = a,2 = b,求1+2是等于3還是等于a+b就亂了,是以不行),于是我就想如果把1轉成字元串類型是否可以,結果證明也不行。。。我用圖檔給大家展示一下,如果有問題的話,歡迎大家提出。這是用數字作為key的報錯:SyntaxError: expression cannot contain assignment, perhaps you meant “==”?
字典的常用方法
1、通過len()函數來檢視字典的長度,得到的是字典内鍵值對的數量,一對鍵值對是一個長度。
2、通過dictname[key] = value的形式給字典添加資料。
3、通過dictname[key] = value的形式更新字典中的資料。
4、del dictname[key]來删除字典中的鍵值對。
5、dictname.pop[key]來删除字典中的鍵值對。
6、dictname.clear() #清空字典内的鍵值對
7、key in dictname #檢視某個鍵是否在字典中,存在傳回True,不存在傳回False。
8、檢視字典中對應鍵的值
(1)dictname[keyname]
(2)dictname.get(keyname)
對應差別是:第一種方法中,如果輸入的key不在字典中會報錯KeyError,在字典中傳回對應的值。第二種方法中,如果輸入的key不在字典中傳回None,在字典中則傳回對應值,可編輯文字知道key是否在字典中。
9、dictname.keys() #傳回字典中所有的key
10、dictname.values() #傳回字典中所有的key
11、dictname.items() #傳回字典中所有的鍵和值
字典的特性
1、字典中同一個鍵隻能出現一次,如果建立時同一個鍵被指派兩次,後一個值會被記住。
2、鍵必須不可變