Python for Beginners (11)|集合 (Set) 資料型態介紹與使用

Python 集合(Set)資料型態入門教學

by KC
0 comment

文章目錄

Python for Beginners

本單元測驗:

集合 (Set) 用於將多個元素儲存在單一變數中。同時集合 (Set) 也是 Python 中用來儲存資料的 4 種內建資料型態之一,其他 3 種則分別是串列 (List)元組 (Tuple)字典 (Dictionary),它們都各自具有不同的特性及用途。了解 Python 元組 (Tuple) 的基本概念及使用方式,對於活用 Python 程式設計是非常重要的。

Python常見資料型態 – 集合(Set)

1. 集合 (Set)

Python 中的集合則具有下面特性:

  • 集合是無順序性的項目集合。
  • 每個元素都是唯一的(沒有重複),必須是不可變的(不能更改)。
  • 集合本身是可變動的,所以我們可以增加或刪除集合中的項目。
  • 集合可用來執行數學集合的操作,如交集聯集差集等。
集合(Set)特性
集合(Set)特性

2. 建立集合(Set)

  • 通過將所有項(元素)放在花括號{}內,用逗號分隔或使用內置函數set()來創建集合。
  • 它可以有任意數量的項目,它們可以是不同的類型(整數,浮點數,元組,字符串等)。 但是一個集合不能將可變元素(如list,set或dictionary)作為其元素。

範例 1:建立空集合 (empty set)

範例 2:建立整數型態項目集合 (set)

範例 3:建立混合資料型態項目之集合 (set)

範例 4:集合(set) 元素不會重複

範例 5:集合(set)內元素是不可變動的(不能更改)

集合內元素是不可變動的(不能更改),集合本身則是可變動的。[3, 4]是可變動的串列,所以不能當作集合元素。

範例 6:將串列 (List) 轉換為集合 (Set)

利用 set() 函式,將串列 (list) 型態轉換為集合 (set) 型態。

3. 更改元素

3.1 加入元素

範例 7:集合(Set)無索引

集合 (Set) 無索引,所以會出現下面錯誤。

範例 8:add():加入一個元素

範例 9:update():加入多個元素

3.2 捨棄或移除元素

範例 10:discard():捨棄一個元素

範例 11:remove():移除一個元素

範例 12:discard() 跟 remove() 差異

discard() 跟 remove() 唯一差別是,如果項目中不存在欲移除項目,使用 discard() 時,它將保持不變;但使用 remove() 會出現錯誤。

3.3 移出或清除元素

範例 13:pop():移出元素

範例 14:clear():清除元素

4. 其他集合 (Set) 運算

4.1  集合(Set)成員檢查

範例 15:檢查成員是否在集合當中

4.2 集合(Set)迭代

範例 16:使用 for 迴圈迭代集合 (Set) 中的項目

我們可以使用 for 迴圈來迭代集合 (Set) 中的每個元素。有關 for 迴圈的詳細用法,我們會在後面文章中介紹。

4.3 集合(Set)內建函式

範例 17:len():取得集合長度

範例 18:max():傳回集合中元素最大值

範例 19:min():傳回集合中元素最小值

範例 20:sum():傳回集合中所有元素總和

5. 集合 (Set) 數學運算

讀者也可以從數學角度來看集合 (Set),首先我們來看看數學對集合的相關定義如下:

  • 集合是由滿足某些條件的物件組合,通常用大括號將這些物件寫在一起,這些物件稱為元素。 若集合 A 表示 1 到 5 的正整數 => A = { 1 , 2 , 3 , 4 , 5 }
  • 不包含任何元素的集合稱為空集合{ },以符號∅表示。
  • 若集合 A 中的每個元素都在集合 B 中,我們稱集合 A 為集合 B 的子集,以符號 A ⊂ B (讀 作「A 包含於 B」)表示。
  • 範例:A = { 1 , 2 , 3 , 4 , 5 } , B = { 1 , 3 , 5 , 7 , 9 }
    1. A 與 B 的交集: A ∩ B = { 1 , 3 , 5 }
    2. A 與 B 的聯集: A ∪ B = { 1 , 2 , 3 , 4 , 5 , 7 , 9 }
    3. A 與 B 的差集: A − B = A − A ∩ B = { 2 , 4 }
集合之運算
集合之運算

5.1 交集 (使用 & 運算子或 intersection() )

使用 & 運算子 intersection() 來做交集

範例 21:集合的交集運算

5.2 聯集 (使用 | 運算子或 union() )

使用 | 運算子union() 來做聯集

範例 22:集合的聯集運算

5.3 差集 (使用 – 運算子或 difference() )

使用 – 運算子difference() 來做差集

範例 23:集合的差集運算

經由本篇文章介紹後,初學者對 Python 資料型態中非常重要的集合 (Set) 型態應該有了基本認識,後續會持續分享 Python 相關學習文章給有興趣的初學者。

6. Python 練習

學習環境:Google Colab (學習請按我)

練習範例:有 (本文提供)

Quiz:有 (測驗請按我)

如果你喜歡這篇文章歡迎訂閱、分享(請載名出處)追蹤,並持續關注最新文章。同時 FB 及 IG 也會不定期提供國內外教育與科技新知。

Related Posts

Leave a Comment

error: Content is protected !!