字典的使用
字典是有多個見對應的值成對組成(把鍵/值對稱爲項),字典的每個鍵/值(key/value)對用冒號(:)分割,每個項之間用逗號(,)分割,整個字典包括在花括號({})中控字典由兩個大括號組成{}
鍵必須是唯一的,但是值不必,值可以取任何數據類型,鍵必須是保持不變的,如字符串,數字或者元組
函數
dict函數
可以用dict函數通過其他映射(如其他字典)或者鍵/值序列對建立字典
字典的基本操作
-
修改字典
向字典添加新內容的方法是增加新鍵/值對,修改或刪除已有鍵/值對 -
刪除字典元素
此處的刪除指的是顯示刪除,顯示刪除一個字典用del命令 -
字典鍵的特性
1.不允許同一個鍵出現兩次,創建是如果同一個鍵被複制兩次後面的值會被記住
2.鍵必須不可變,可以用數字,字符串或者元組充當,不能用列表
len函數
len函數用於機選字典元素的個數,即鍵的總數
type函數
type函數返回輸入的變量類型,如果輸入的變量是字典,就返回字典類型
字典和列表的區別
dict的特點是:
1.查找和插入的速度極快,不會隨着key的增加而變慢
2. 需要佔用大量內存
list的特點是
3. 查找和插入時間隨着元素的增加而增加
4. 佔用空間小,浪費內存很少
所以dict是使用空間換取是時間
dict可以用在很多需要告訴查找的地方,python代碼中幾乎無處不在,正確使用dict非常重要,需要牢記dict的鍵必須是不可變的對象。
提示:
dict內部存放的順序和鍵放入的順序沒有關係
字典的方法
-
clear()方法
用於刪除字典的所有項
dict.clear()
dict代表字典,該方法不需要參數,該函數是一個原地操作函數,沒有任何返回值 -
copy()方法
copy()方法
返回一個具有相同鍵/值對的新字典。這個方式叫做淺拷貝,因爲值本身是相同的,而不是副本
copy()方法
dict.copy()
dict代表字典,該方法不需要參數,返回結果爲一個字典的淺拷貝
替換副本的值時原始字典不受影響,如果修改了某個值(原地修改,不是替換),原始字典就會改變,因爲同樣的值也在源自點中,以這種方式進行賦值就是淺複製 -
fromkeys()方法
fromkeys()方法用於創建一個新的字典
dict.fromkeys(sep[,value])
此語法中,dict代表指定字典,seq代表字典鍵值列表;value代表可選參數,設置鍵序列(seq)的值。 -
get()方法
get()方法返回指定鍵的值,如果值不在字典中,就返回默認值
get()方法;
dict.get(key,defult = None)
dict 代表指定字典,key代表字典中要查找的鍵,default代表指定鍵的值不存在時返回,默認值,該方法結果爲指定鍵的值,如果值不在字典中,就返回默認值None -
key in dict 方法
key in dict 此語法中 dict代表指定字典,key 代表在字典中查找鍵 ,如果鍵在字典裏就返回true,否則就返回false。 -
items()方法
items()方法以列表返回可遍歷的(鍵/值)元組數據
items()方法的語法如下
dict.items()
dict代表字典,該方法不需要參數 -
keys ()方法
keys ()方法以了列表返回一個字典的所有鍵
dict.keys()
返回結果爲一個字典的所有鍵t
返回的是一個元組數列,數組中包含字典的所有鍵 -
setdefault()方法
setdefault()方法
和get方法類似,用於或偶的於給定鍵相關聯的值。如果鍵不存在在於字典中,就會添加鍵並將值設爲默認值 -
項目1setdefault()方法
dict.setdefault(key,default = None)
dict代表字典,key代表查找的鍵值,default代表鍵不存在時設置的默認鍵值,該方法沒有返回值 -
update()方法
update()方法用於把字典dict2的鍵/值對更新到dict裏面
update()方法
dict.update(dict2)
dict代表字典,dict2代表添加到指定字典dict裏面的字典
提供的字典中的項被添加到舊的字典裏面,如果有相同的鍵就會被覆蓋 -
values()方法
values()方法以列表形式返回字典中的所有值,與返回鍵的列表不同,返回的列表中可以包含重複元素。
values()方法
dict.values()