python學習6-內置數據結構4-字典

字典是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() #按插入順序
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章