您好,登錄后才能下訂單哦!
set數據結構有哪些基礎知識?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
1、set數據結構的概念
set(集合)是一組無重復無序的數據,就像數學中集合的概念。它沒有標準的括號包裹,[]表示list,()表示tuple,{}表示dict。但是我們可以用帶值的大括號來定義。set數據結構最大的作用就是去除重復的元素,如下所示:
set1 = {1, 2, 2, 3, 3, 3}
print(set1)
set1.add(1)
set1.add(4)
print(set1)
2、使用場景
set數據結構在很多情況下?常有?,例如你可能想檢查列表中是否包含重復的元素,你有兩個選擇,第?個需要使?for循環,就像這樣:
some_list = ['a', 'b', 'c', 'b', 'd', 'm', 'n', 'n']
duplicates = []
for value in some_list:
if some_list.count(value) > 1:
if value not in duplicates:
duplicates.append(value)
print(duplicates)
### 輸出: ['b', 'n']
但還有?種更簡單更優雅的解決?案,那就是使?集合(sets),直接這樣做:
some_list = ['a', 'b', 'c', 'b', 'd', 'm', 'n', 'n']
duplicates = set([x for x in some_list if some_list.count(x) > 1]) print(duplicates)
### 輸出: set(['b', 'n'])
3、數學運算
(1)交集
你可以對?兩個集合的交集(兩個集合中都有的數據),如下:
valid = set(['yellow', 'red', 'blue', 'green', 'black']) input_set = set(['red', 'brown'])
print(input_set.intersection(valid))
### 輸出: set(['red'])
(2)差集
你可以?差集(difference)找出?效的數據,相當于??個集合減去另?個集合的數據,例如:
valid = set(['yellow', 'red', 'blue', 'green', 'black']) input_set = set(['red', 'brown'])
print(input_set.difference(valid))
### 輸出: set(['brown'])
(3)用符號
a_set = {'red', 'blue', 'green'}
print(type(a_set))
### 輸出: <type 'set'>
看完上述內容,你們掌握set數據結構有哪些基礎知識的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。