3-2 0基礎學Python(Python入門學習第三天),Python更新dict,Python之 遍歷dict,Python中dict的特點,Python中什麼是set

dict是可變的,也就是說,我們可以隨時往dict中添加新的 key-value。比如已有dict:

d = {
    'Adam': 95,
    'Lisa': 85,
    'Bart': 59
}

要把新同學'Paul'的成績 72 加進去,用賦值語句:

>>> d['Paul'] = 72

再看看dict的內容:

>>> print d
{'Lisa': 85, 'Paul': 72, 'Adam': 95, 'Bart': 59}

如果 key 已經存在,則賦值會用新的 value 替換掉原來的 value:

>>> d['Bart'] = 60
>>> print d
{'Lisa': 85, 'Paul': 72, 'Adam': 95, 'Bart': 60}

 

由於dict也是一個集合,所以,遍歷dict和遍歷list類似,都可以通過 for 循環實現。

直接使用for循環可以遍歷 dict 的 key:

>>> d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }
>>> for key in d:
...     print key
... 
Lisa
Adam
Bart

由於通過 key 可以獲取對應的 value,因此,在循環體內,可以獲取到value的值。

Python中什麼是set

dict的作用是建立一組 key 和一組 value 的映射關係,dict的key是不能重複的。

有的時候,我們只想要 dict 的 key,不關心 key 對應的 value,目的就是保證這個集合的元素不會重複,這時,set就派上用場了。

set 持有一系列元素,這一點和 list 很像,但是set的元素沒有重複,而且是無序的,這點和 dict 的 key很像。

創建 set 的方式是調用 set() 並傳入一個 list,list的元素將作爲set的元素:

>>> s = set(['A', 'B', 'C'])

可以查看 set 的內容:

>>> print s
set(['A', 'C', 'B'])

請注意,上述打印的形式類似 list, 但它不是 list,仔細看還可以發現,打印的順序和原始 list 的順序有可能是不同的,因爲set內部存儲的元素是無序的。

因爲set不能包含重複的元素,所以,當我們傳入包含重複元素的 list 會怎麼樣呢?

>>> s = set(['A', 'B', 'C', 'C'])
>>> print s
set(['A', 'C', 'B'])
>>> len(s)
3

結果顯示,set會自動去掉重複的元素,原來的list有4個元素,但set只有3個元素。

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