在Python中,set
是一個(gè)非常有用的數(shù)據(jù)類型,它可以用來(lái)存儲(chǔ)不重復(fù)的元素,并且支持集合運(yùn)算。下面是一些基本的集合運(yùn)算的例子:
你可以使用大括號(hào) {}
或者 set()
函數(shù)來(lái)創(chuàng)建一個(gè)集合。
# 使用大括號(hào)創(chuàng)建集合
s1 = {1, 2, 3, 4, 5}
# 使用set()函數(shù)創(chuàng)建集合
s2 = set([1, 2, 3, 4, 5])
使用 add()
方法可以向集合中添加一個(gè)元素。
s1.add(6)
print(s1) # 輸出: {1, 2, 3, 4, 5, 6}
注意:如果你試圖添加一個(gè)已經(jīng)存在于集合中的元素,Python將不會(huì)報(bào)錯(cuò),但也不會(huì)有任何效果。 3. 刪除元素
使用 remove()
方法可以從集合中刪除一個(gè)元素。如果元素不存在,remove()
方法會(huì)引發(fā)一個(gè) KeyError
。
s1.remove(6)
print(s1) # 輸出: {1, 2, 3, 4, 5}
為了避免 KeyError
,你可以使用 discard()
方法,它在元素不存在時(shí)不會(huì)有任何效果。
s1.discard(6) # 沒(méi)有任何效果,因?yàn)?已經(jīng)被移除了
Python的集合支持多種運(yùn)算,包括并集、交集、差集和對(duì)稱差集。
* 并集(Union): 使用 `|` 運(yùn)算符或者 `union()` 方法。
* 交集(Intersection): 使用 `&` 運(yùn)算符或者 `intersection()` 方法。
* 差集(Difference): 使用 `-` 運(yùn)算符或者 `difference()` 方法。
* 對(duì)稱差集(Symmetric Difference): 使用 `^` 運(yùn)算符或者 `symmetric_difference()` 方法。
示例代碼:
s1 = {1, 2, 3, 4, 5}
s2 = {4, 5, 6, 7, 8}
# 并集
print(s1 | s2) # 輸出: {1, 2, 3, 4, 5, 6, 7, 8}
print(s1.union(s2)) # 輸出: {1, 2, 3, 4, 5, 6, 7, 8}
# 交集
print(s1 & s2) # 輸出: {4, 5}
print(s1.intersection(s2)) # 輸出: {4, 5}
# 差集
print(s1 - s2) # 輸出: {1, 2, 3}
print(s1.difference(s2)) # 輸出: {1, 2, 3}
# 對(duì)稱差集
print(s1 ^ s2) # 輸出: {1, 2, 3, 6, 7, 8}
print(s1.symmetric_difference(s2)) # 輸出: {1, 2, 3, 6, 7, 8}
這些就是Python中集合的基本操作和集合運(yùn)算。記住,集合是無(wú)序的,所以它們的元素沒(méi)有特定的順序。