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中,並解釋結果。