1 《1》: 2 set和dict相似,也是一組key的集合,但不存儲value。因爲key不能重複,因此,在set中,沒有重複的key。 3 要建立一個set,須要提供一個list做爲輸入集合: 4 5 s = set([1,2,3]) 6 print(s) 7 結果:[1,2,3] 8 9 注意,傳入的參數[1, 2, 3]是一個list,而顯示的{1, 2, 3}只是告訴你這個set內部有1,2,3這3個元素,顯示的順序也不表示set是有序的。。 10 11 《2》: 12 若是,列表內有重複的元素會被set過濾掉 13 s = set([1,2,2,3,5,5,,6]) 14 print(s) 15 結果:[1,2,3,5,6] 16 17 《3》: 18 s = set([1,2,3,4,5]) 19 s.add(2) # 添加 2 20 print(s) 21 結果:[1,2,3,4,5] 22 在這裏使用add添加元素列表裏已有的是沒用的 23 《4》:說一下不可變的對象 24 # 雖然字符串有一個replace()方法,可是到底能不能改變str類型咱們一探究竟。 25 >>>s = ‘abcd’ 26 >>>b = s.replace('a',' A') 27 'Abcd' 28 >>>s 29 abcd 30 當咱們調用a.replace('a', 'A')時,實際上調用方法replace是做用在字符串對象'abc'上的,而這個方法雖然名字叫replace,但卻沒有改變字符串'abc'的內容。相反,replace方法建立了一個新字符串'Abc'並返回,若是咱們用變量b指向該新字符串,就容易理解了,變量a仍指向原有的字符串'abc',但變量b卻指向新字符串'Abc'了 31 [小結:] 32 因此,對於不變對象來講,調用對象自身的任意方法,也不會改變該對象自身的內容。相反,這些方法會建立新的對象並返回,這樣,就保證了不可變對象自己永遠是不可變的。 33 使用key-value存儲結構的dict在Python中很是有用,選擇不可變對象做爲key很重要,最經常使用的key是字符串。 34 tuple雖然是不變對象,但試試把(1, 2, 3)和(1, [2, 3])放入dict或set中,並解釋結果。