在Python中,set
是一個無序的不重復元素序列。它支持一些基本的操作,如添加、刪除元素以及集合之間的數學運算(如并集、交集等)。以下是一些常見的set
類型操作:
使用set()
構造函數或大括號{}
可以創建一個空集合。也可以通過將一個可迭代對象(如列表、元組等)傳遞給set()
構造函數來創建一個包含特定元素的集合。
# 創建空集合
s = set()
# 或者
s = {}
# 從列表創建集合
lst = [1, 2, 3, 4, 5]
s = set(lst)
使用add()
方法可以向集合中添加一個元素。如果元素已經存在于集合中,則不會進行任何操作。
s = {1, 2, 3}
s.add(4)
print(s) # 輸出: {1, 2, 3, 4}
使用remove()
方法可以從集合中刪除一個元素。如果元素不存在于集合中,則會引發一個KeyError
。
s = {1, 2, 3, 4}
s.remove(3)
print(s) # 輸出: {1, 2, 4}
此外,還可以使用discard()
方法刪除一個元素,但如果元素不存在于集合中,則不會進行任何操作。
s = {1, 2, 4}
s.discard(3) # 不會引發錯誤,但不會有任何效果
print(s) # 輸出: {1, 2, 4}
Python中的集合支持多種數學運算,如并集、交集、差集和對稱差集等。
* 并集:`union()`或`|`操作符
* 交集:`intersection()`或`&`操作符
* 差集:`difference()`或`-`操作符
* 對稱差集:`symmetric_difference()`或`^`操作符
s1 = {1, 2, 3}
s2 = {2, 3, 4}
# 并集
s_union = s1.union(s2)
# 或者
s_union = s1 | s2
print(s_union) # 輸出: {1, 2, 3, 4}
# 交集
s_intersect = s1.intersection(s2)
# 或者
s_intersect = s1 & s2
print(s_intersect) # 輸出: {2, 3}
# 差集
s_diff = s1.difference(s2)
# 或者
s_diff = s1 - s2
print(s_diff) # 輸出: {1}
# 對稱差集
s_sym_diff = s1.symmetric_difference(s2)
# 或者
s_sym_diff = s1 ^ s2
print(s_sym_diff) # 輸出: {1, 4}
這些是Python中set
類型的一些基本操作。請注意,集合是無序的,因此它們的元素沒有特定的順序。