一、定義:是另一種可變容器模型,可存儲任意類型對象;(也被稱為關聯數組或哈希表;存儲的數據是沒有順序的)
語法為:
1 d = {key1 : value1, key2 : value2 } 2 3 #------------------------實例-----------------------# 4 5 d = {'country':{'China':{'city':['beijing','shanghai','guangzhou','shengzhen']}},'info':'a beautiful country',1:2}
注意:
1、鍵必須是唯一的,且鍵值不可修改,可以聯想到新華字典,在傳遞參數用(**arg)用來保存字典;
2、字典值可以是任何的 python 對象,既可以是標准的對象,也可以是用戶定義的(如上文語法中的實例所示);
3、不允許同一個鍵出現兩次。創建時如果同一個鍵被賦值兩次,后一個值會被記住;
4、鍵必須不可變,所以可以用數字,字符串或元組充當,而用列表就不行。
二、字典的增、刪、改、查:
增:
值得注意的是:
1、如果存在鍵值對,在該鍵下添加新元素,會把舊元素替換(修改元素);
2、如果不存在的鍵,則會在該字典里新插入一對鍵值對;
刪:
改:
字典添加新內容的方法是增加新的鍵/值對,修改或刪除已有鍵/值對;如【增】標題下的截圖所示。
查:
1、獲取字典內元素方法(通過鍵(key)來獲取對應的值(value)):
2、通過values() 內置函數來獲取所有值:
三、內置函數:
len(dict):計算字典元素個數,即鍵的總數
str(dict):輸出字典,以可打印的字符串表示。
type(variable):返回輸入的變量類型,如果變量是字典就返回字典類型。
dict.clear():刪除字典內所有元素
dict.copy():返回一個字典的淺復制
dict.fromkeys():創建一個新字典,以序列seq中元素做字典的鍵,val為字典所有鍵對應的初始值
dict.get(key,default=none):返回指定鍵的值,如果值不在字典中返回default值
key in dict:如果鍵在字典dict里返回true,否則返回false
dict.items():以列表返回可遍歷的(鍵, 值) 元組數組
dict.keys():返回一個迭代器,可以使用 list() 來轉換為列表
dict.setdefault(key,default=none):和get()類似, 但如果鍵不存在於字典中,將會添加鍵並將值設為default
dict.update(dict2):把字典dict2的鍵/值對更新到dict里
dict.values():返回一個迭代器,可以使用 list() 來轉換為列表
pop(key[,default]):刪除字典給定鍵 key 所對應的值,返回值為被刪除的值。key值必須給出。 否則,返回default值。
d.popitem():隨機返回並刪除字典中的一對鍵和值(一般刪除末尾對)。
小結:感覺字典的東西還有挺多,以后會更詳細的寫出關於字典的要點;畢竟剛開始學習,很多不足,且有錯誤;若是看到有什么不對的地方,還希望能指出。感激不盡!