python內置字典:dict

dict


dict使用鍵-值(key-value)存儲,具有很快的查找速度。

d = {'Danny':95,'Joy':75,'Bob':85}

輸入d['Danny']可得到95.

dict通過給定的名字,在內部找出對應的存放成績的內存地址,直接取出來,因此速度非常快。

將數據放入dict的方法,除了上述中初始化時指定外,還可以通過key放入:

d['Adam']=67

一個key只能對應一個value,當多次對一個key放入value時,後面的值會把前面的值沖掉。

key不存在時,dict會報錯,避免錯誤的方法:

1.通過 in 判斷key是否存在,False/True

'Thomas' in d

2.通過 get() ,若key不存在,會不返回數值,或自己指定的value

d.get('Thomas')
d.get('Thomas',-1)

刪除一個key,用pop(key),此時對應的value也會被刪除。

dict查找與插入的速度極快,但佔用內存多,浪費大。

list查找和插入的時間隨元素增加而增加,但佔用空間小,浪費內存少

dict 的 key 是不可變對象!

set


set也是一組key的集合,但不存儲value,由於key唯一,因此set中沒有重複的key

要創建一個set,需要提供一個list作爲輸入集合:

s=set([1,2,3])
print(s)
{1,2,3}

[1,2,3]是一個list,而{1,2,3}表示s內部有1,2,3這三個元素。但不表示set是有序的。

重複元素在set中被自動過濾:

s=set([1,1,2,2,3,3])
print(s)
{1,2,3}

通過add(key)可以將元素key添加到set中,可以重複添加,但不會對set有影響。

通過remove(key)可以將元素key從set中刪除。

set可以看成是數學上無序和無重複元素的集合。因此,set可以做交集、並集等操作:

s1 = set([1,2,3])
s2 = set([2,3,4])
s1 & s2 = {2,3}
s1 | s2 = {1,2,3,4}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章