dict 的第三個特點是作為 key 的元素必須不可變,Python 的基本類型如字符串、整數(shù)、浮點數(shù)都是不可變的,都可以作為 key。但是 list 是可變的,就不能作為 key。
Python 數(shù)據(jù)類型:set
set 持有一系列元素,這一點和 list 很像,但是set的元素沒有重復(fù),而且是無序的,這點和 dict 的 key很像。
創(chuàng)建 set 的方式是調(diào)用 set() 并傳入一個 list,list的元素將作為set的元素:
s =set(['A','B','C'])
由于 set 存儲的是無序集合,所以我們沒法通過索引來訪問。訪問 set 中的某個元素實際上就是判斷一個元素是否在 set 中。
print('A'in s)# True or Flase
set 的內(nèi)部結(jié)構(gòu)和 dict 很像,唯一區(qū)別是不存儲 value,因此,判斷一個元素是否在 set 中速度很快。set 存儲的元素和 dict 的 key 類似,必須是不變對象,因此,任何可變對象是不能放入 set 中的。應(yīng)用場景:存儲星期、月份等。
添加元素時,用 set 的add()方法。刪除 set 中的元素時,用 set 的remove()方法,如果刪除的元素不存在 set 中,remove()會報錯。