標籤:刪除 items 函數 結構 values item clear 有序 def
字典是key-value結構
1、定義
d = {}
d = dict()
d = {‘a‘:1,‘b‘:2}
d = dict([‘a‘,1],[‘b‘,2]) #可迭代對象的元素必須是二元組,二元組第0個元素為key,第1個元素為vlaue
d = dict.fromkeys(range(5)) #傳人可迭代對象的key,值為none
d = dict.fromkeys(range(5),‘abc‘) #傳人可迭代對象的key,值為abc
2、增加
d[‘a‘] = 1 #可以直接使用key作為下標,不存在會增加。
d.update([(‘c‘,3),(‘d‘,0)])
d.update(字典) #通常用於合并字典
3、修改
d[‘key‘] = value #當key存在則修改
4、刪除
d.pop(key[,‘default‘]) #刪除並返回該key的value,不存在key error.當有預設值時,key不存在時返回預設值
d.popitem() #隨機刪除並返回一個二元組,空字典key error
d.clear() #清空字典
5、訪問
d[key] #通過key訪問value,不存在key error
d.get(key[,‘default‘]) #不存在返回none,有預設值時返回預設值
d.setdefault(key[,‘default‘]) #key存在返回value,不存在添加該 key,value預設值。
d.keys() #返回字典的key
d.values() #返回字典的value
d.items() #返回字典的key和vaue
d.keys() d.values() d.items() 在p2中都是返回列表,會複製一份記憶體,p3中是產生器,不會複製記憶體在p2中可以用d.iteritems()
6、字典限制
字典的key不能重複,且可hash,無序
7、預設字典
from collections import defaultdict
d1 = defaultdict(list) #default初始化時,需要傳入一個函數,這個函數也叫工廠函數,當我們通過下標訪問這個key不存在時,defaultdict會調用函數產生一個對象作為這個key的value。
8、有序字典
d = OrderedDict() #按插入順序
python學習6-內建資料結構4-字典