[Python] Set集合、set()函數

更新於 發佈於 閱讀時間約 3 分鐘

Set(集合) : 是一個沒有順序沒有重複元素的集合 (就像是只有Key沒有Value的字典)

因為Set沒有重複資料/元素的特性,可以用來查看2個集合元素間是否有交集、聯集、差集的關聯性。


  • 建立集合
  1. set()函數

set()函數可以建立一個空集合,也可以將串列、字串、tuple、字典轉成集合

set(要變成集合的元素)

  1. 大括號{}包住元素

初始化元素可以用{}包住元素,或是使用set()函數,如果使用set={}會建立成空的字典

line 5 : False等於0,True等於1,所以在集合當中只會保留數字

s1 = set()
s4 = set(('a','b','c','d'))
s2 = {1,2,3,4}
s3 = {1,1,2,2,3,3,3,4,5,5}
s5 = {0,1,2,3,'a','b',False,True}

print(s1)
print(s2)
print(s3)
print(s4)
print(s5)

# ========Output============
# set()
# {'b', 'd', 'c', 'a'}
# {1, 2, 3, 4}
# {1, 2, 3, 4, 5}
# {0, 1, 2, 3, 'b', 'a'}


  • 加入集合add()

將元素加入集合當中

set1 = {1,2,3,4}
set1.add('a')
set1.add("abc")

print(set1)

# ========Output============
# {1, 2, 3, 4, 'a', 'abc'}


  • 移除集合中的元素remove()、discard()
  1. remove()

刪除()內指定的元素,如果該元素不存在產生錯誤訊息

set2 = {1,2,3,4}
set2.remove(2)
set2.remove(4)

print(set2)

# ========Output============
# {1, 3}
  1. discard()

刪除()內指定的元素,如果該元素不存在不會產生錯誤訊息

set2 = {1,2,3}
set2.discard(2)
set2.discard(4)

print(set2)

# ========Output============
# {1, 3}


交集、聯集、差集、對稱差集


方法 運算子

  • 交集 a.intersection(b) a & b
  • 聯集 a.union(b) a|b
  • 差集 a.difference(b) a - b
  • 對稱差集 a.symmetric_difference(b) a ^ b





avatar-img
7會員
49內容數
這裡會放一些我寫過的 Leetcode 解題和學習新技術的筆記
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
Youna's Devlog 的其他內容
isalnum() : 檢測字串是否由字母和數字組成 isalpha() : 檢測字串是否只由字母組成 isalnum() str1 = "abc123" print(str1.isalnum()) str2 = "pop.cat" print(str2.isalnum()) str3
Dictionary(字典) : 是一個可以用來存放不同資料(不同型態)的容器(集合) 每一個元素都是以{鍵(Key):值(Value)}所構成,字典中每個項目都是用","隔開
isalnum() : 檢測字串是否由字母和數字組成 isalpha() : 檢測字串是否只由字母組成 isalnum() str1 = "abc123" print(str1.isalnum()) str2 = "pop.cat" print(str2.isalnum()) str3
Dictionary(字典) : 是一個可以用來存放不同資料(不同型態)的容器(集合) 每一個元素都是以{鍵(Key):值(Value)}所構成,字典中每個項目都是用","隔開
你可能也想看
Google News 追蹤
Thumbnail
/ 大家現在出門買東西還會帶錢包嗎 鴨鴨發現自己好像快一個禮拜沒帶錢包出門 還是可以天天買滿買好回家(? 因此為了記錄手機消費跟各種紅利優惠 鴨鴨都會特別注意銀行的App好不好用! 像是介面設計就是會很在意的地方 很多銀行通常會為了要滿足不同客群 會推出很多App讓使用者下載 每次
Thumbnail
Dart 的 Set(集合)是一種無序且不重複的資料結構,主要用於儲存唯一元素。本文介紹了 Set 的基本操作,包括宣告空 Set、初始化 Set、新增和刪除元素、取得大小、清空 Set,以及集合運算(聯集、交集和差集)。
Thumbnail
在 Python 中,tuple 與 List有一個關鍵的不同點:tuple 是不可變的,這意味著一旦創建了 tuple,就無法更改其內容。 這與 List的可變性形成了對比,list 可以新增、刪除或修改元素。 元素的意思: 元素:指的是 List 中的每一個獨立的項目或值。
Thumbnail
題目敘述 Kth Distinct String in an Array 給定一個輸入陣列arr 和 參數k 請返回第k個出現恰好一次的陣列元素。
在處理數據時,最可能會遇到數據中含有None的時候,若沒有處理就進行運算就會造成程式崩潰或者報錯 數據中含有None input_list = [(42, 292), (28, 296), (999, 92), (993, 46), (219, 4), (279, 2), (None, None
在檢查列表中含有tuple的座標點時,若要給其他演算法做運算時若有其中有tuple有空值時,就會報錯。 本文主要介紹兩種方法可以檢查是否有空值 程式範例1 positon_list =[(42,123),(None,None),(22,11)] for cord in positon_lis
Thumbnail
Array可以說是各種語言除了基本型別之外,最常用的資料型別與容器之一了。 Array 這種連續格子狀的資料結構,在Python要怎麼表達呢? 建立一個空的陣列 最簡單也最直接的寫法就是 array = [] # Python list [] 就對應到大家熟知的array 陣列型態的資料結
Thumbnail
當我們在做很多處理時,結果可能會是List包住一些數值,例如找輪廓或連通域分析時,沒有剛好的特徵可能就會有List含(空值得)形式出現。 為了避免報錯,我們就要額外先做一些處理,先做判斷是否有值在往下一個階段。 all 和 any 是 Python 中用於檢查可迭代物件(如清單、元組、集合等)
Thumbnail
題目敘述 題目的情境是設計並且實現一個包含所有正整數的數據流,以set集合的方式存在。 數據流 = {1, 2, 3, 4, ..., ∞} 要求我們去實現定義好的function介面: SmallestInfiniteSet()建構子,初始化這個包含所有正整數的數據流。 int po
Thumbnail
在Python函式中,可以使用None來指定動態的預設引數,使用更靈活,Docstrings同時能夠提供清晰的文檔。本篇文章說明利用這種方式來讓函式更彈性,輸入不同型態的關鍵字引數,並在事件紀錄時間的Log訊息的範例中詮釋,可自行輸入時間或者預設導入系統的時間,在跟其他程式交握時,可以更靈活的應用。
Thumbnail
列表(List)和元組(Tuple)都是 Python 中用來存儲集合元素的數據結構,兩者看起來很像,在初學時很容易搞混,所以觀念要建立好。 可以把列表(List)和元組(Tuple)想像成是一個容器,什麼元素都可以塞
Thumbnail
/ 大家現在出門買東西還會帶錢包嗎 鴨鴨發現自己好像快一個禮拜沒帶錢包出門 還是可以天天買滿買好回家(? 因此為了記錄手機消費跟各種紅利優惠 鴨鴨都會特別注意銀行的App好不好用! 像是介面設計就是會很在意的地方 很多銀行通常會為了要滿足不同客群 會推出很多App讓使用者下載 每次
Thumbnail
Dart 的 Set(集合)是一種無序且不重複的資料結構,主要用於儲存唯一元素。本文介紹了 Set 的基本操作,包括宣告空 Set、初始化 Set、新增和刪除元素、取得大小、清空 Set,以及集合運算(聯集、交集和差集)。
Thumbnail
在 Python 中,tuple 與 List有一個關鍵的不同點:tuple 是不可變的,這意味著一旦創建了 tuple,就無法更改其內容。 這與 List的可變性形成了對比,list 可以新增、刪除或修改元素。 元素的意思: 元素:指的是 List 中的每一個獨立的項目或值。
Thumbnail
題目敘述 Kth Distinct String in an Array 給定一個輸入陣列arr 和 參數k 請返回第k個出現恰好一次的陣列元素。
在處理數據時,最可能會遇到數據中含有None的時候,若沒有處理就進行運算就會造成程式崩潰或者報錯 數據中含有None input_list = [(42, 292), (28, 296), (999, 92), (993, 46), (219, 4), (279, 2), (None, None
在檢查列表中含有tuple的座標點時,若要給其他演算法做運算時若有其中有tuple有空值時,就會報錯。 本文主要介紹兩種方法可以檢查是否有空值 程式範例1 positon_list =[(42,123),(None,None),(22,11)] for cord in positon_lis
Thumbnail
Array可以說是各種語言除了基本型別之外,最常用的資料型別與容器之一了。 Array 這種連續格子狀的資料結構,在Python要怎麼表達呢? 建立一個空的陣列 最簡單也最直接的寫法就是 array = [] # Python list [] 就對應到大家熟知的array 陣列型態的資料結
Thumbnail
當我們在做很多處理時,結果可能會是List包住一些數值,例如找輪廓或連通域分析時,沒有剛好的特徵可能就會有List含(空值得)形式出現。 為了避免報錯,我們就要額外先做一些處理,先做判斷是否有值在往下一個階段。 all 和 any 是 Python 中用於檢查可迭代物件(如清單、元組、集合等)
Thumbnail
題目敘述 題目的情境是設計並且實現一個包含所有正整數的數據流,以set集合的方式存在。 數據流 = {1, 2, 3, 4, ..., ∞} 要求我們去實現定義好的function介面: SmallestInfiniteSet()建構子,初始化這個包含所有正整數的數據流。 int po
Thumbnail
在Python函式中,可以使用None來指定動態的預設引數,使用更靈活,Docstrings同時能夠提供清晰的文檔。本篇文章說明利用這種方式來讓函式更彈性,輸入不同型態的關鍵字引數,並在事件紀錄時間的Log訊息的範例中詮釋,可自行輸入時間或者預設導入系統的時間,在跟其他程式交握時,可以更靈活的應用。
Thumbnail
列表(List)和元組(Tuple)都是 Python 中用來存儲集合元素的數據結構,兩者看起來很像,在初學時很容易搞混,所以觀念要建立好。 可以把列表(List)和元組(Tuple)想像成是一個容器,什麼元素都可以塞