在 Python 中檢查一個集合是否是另一個集合的子集

Manav Narula 2023年1月30日
  1. 在 Python 中使用 <= 檢查一個集合是否是另一個集合的子集
  2. 在 Python 中使用 issubset() 函式檢查一個集合是否是另一個集合的子集
  3. 在 Python 中使用 all() 函式檢查一個集合是否是另一個集合的子集
  4. まとめ
在 Python 中檢查一個集合是否是另一個集合的子集

在數學中,我們有一組表示數字、變數等數學物件的集合。它們可以有一個不同的子集,另一個集合包含另一個集合的所有元素(稱為超集)。

在 Python 中,我們有 set 物件表示集合並執行不同的集合相關操作。它是不包含重複元素的專案的無序集合。

本教程將討論在 Python 中驗證一個集合是另一個集合的子集。

在 Python 中使用 <= 檢查一個集合是否是另一個集合的子集

在 Python 中,我們可以對集合進行不同的數學比較。 <= 運算子可以檢查一個集合是否是 Python 中另一個集合的子集。

例子:

s1 = {1, 3}
s2 = {5, 6, 8, 1, 3, 4}
print(s1 <= s2)

輸出:

True

我們可以使用 set() 函式將其他可迭代物件顯式轉換為集合。這個函式在處理列表等其他物件時很有幫助,我們想檢查一個物件是否包含另一個物件的元素。

請記住,重複的元素會在集合中被刪除。

請參閱下面的程式碼。

s1 = [1, 3]
s2 = [5, 6, 8, 1, 3, 4]
print(set(s1) <= set(s2))

輸出:

True

在 Python 中使用 issubset() 函式檢查一個集合是否是另一個集合的子集

issubset() 函式檢查一個集合是否是另一個集合的子集。如果另一個 iterable 被傳遞給這個函式,它會臨時將它轉換為一個集合並相應地返回 True 或 False。

請參閱下面的程式碼。

s1 = {1, 3}
s2 = {5, 6, 8, 1, 3, 4}
print(s1.issubset(s2))

輸出:

True

在 Python 中使用 all() 函式檢查一個集合是否是另一個集合的子集

all() 函式接受一個可迭代物件,如果該物件的所有元素都為 True,則返回 True。我們可以遍歷一個列表並使用 in 運算子比較每個元素以檢查它是否存在於另一個列表中。

如果所有元素都返回 True,那麼 all() 函式將返回 True,確認列表 1 是列表 2 的子集;否則,它返回 False。

我們在下面的程式碼中實現了這一點。

s1 = {1, 3}
s2 = {5, 6, 8, 1, 3, 4}
ch = [i in s2 for i in s1]
print(all(ch))

輸出:

True

まとめ

最後,我們已經討論瞭如何在 Python 中驗證一個集合是另一個集合的子集。前兩種方法涉及集合操作。

<= 運算子和 issubset() 函式直接返回 True 或 False。最後一種方法是分別檢查所有元素,然後給出結果。

作者: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

相關文章 - Python Set