溫馨提示×

Python集合操作能做哪些操作

小樊
81
2024-11-09 11:24:44
欄目: 編程語言

Python集合(set)是一個(gè)無序且不包含重復(fù)元素的數(shù)據(jù)結(jié)構(gòu)。它支持以下操作:

  1. 創(chuàng)建集合:可以使用花括號 {} 或者 set() 函數(shù)來創(chuàng)建集合。例如:my_set = {1, 2, 3} 或者 my_set = set([1, 2, 3])。

  2. 添加元素:使用 add() 方法向集合中添加一個(gè)元素。例如:my_set.add(4)。

  3. 刪除元素:使用 remove() 方法從集合中刪除一個(gè)元素。如果元素不存在,會拋出 KeyError 異常。例如:my_set.remove(4)。還可以使用 discard() 方法,如果元素不存在不會拋出異常。例如:my_set.discard(5)。

  4. 集合長度:使用內(nèi)置函數(shù) len() 獲取集合中元素的個(gè)數(shù)。例如:length = len(my_set)。

  5. 成員關(guān)系測試:使用 innot in 關(guān)鍵字檢查一個(gè)元素是否在集合中。例如:print(3 in my_set) 或者 print(6 not in my_set)。

  6. 遍歷集合:可以使用 for 循環(huán)遍歷集合中的元素。例如:

    for item in my_set:
        print(item)
    
  7. 集合運(yùn)算:

    • 并集:使用 union() 方法或 | 運(yùn)算符。例如:set1.union(set2) 或者 set1 | set2。
    • 交集:使用 intersection() 方法或 & 運(yùn)算符。例如:set1.intersection(set2) 或者 set1 & set2
    • 差集:使用 difference() 方法或 - 運(yùn)算符。例如:set1.difference(set2) 或者 set1 - set2
    • 對稱差集:使用 symmetric_difference() 方法或 ^ 運(yùn)算符。例如:set1.symmetric_difference(set2) 或者 set1 ^ set2
    • 子集:使用 issubset() 方法或 <= 運(yùn)算符檢查一個(gè)集合是否是另一個(gè)集合的子集。例如:print(set1.issubset(set2)) 或者 print(set1 <= set2)。
    • 超集:使用 issuperset() 方法或 >= 運(yùn)算符檢查一個(gè)集合是否是另一個(gè)集合的超集。例如:print(set1.issuperset(set2)) 或者 print(set1 >= set2)
  8. 遍歷集合元素的對:使用 items() 方法遍歷集合中元素及其對應(yīng)的鍵(對于字典類型的集合)。例如:

    for key, value in my_set.items():
        print(key, value)
    
  9. 轉(zhuǎn)換為列表或元組:使用 list()tuple() 函數(shù)將集合轉(zhuǎn)換為列表或元組。例如:my_list = list(my_set) 或者 my_tuple = tuple(my_set)。

0