一、集合的概念
集合是Python中的一種基本數據結構,它的主要特點是可以存儲不同類型的數據,並且不會重複。
Python的集合主要有兩種類型:set和frozenset,其中set是可變類型,而frozenset是不可變類型。因此,如果需要修改數據,應該使用set,如果需要保證數據不被修改,應該使用frozenset。
二、集合的創建和基本操作
創建集合非常簡單,只需要使用花括號{}或者set()函數即可:
set1 = {1, 2, 3, 4, 5} set2 = set([3, 4, 5, 6, 7])
其中,set1和set2都是包含數字1到7的集合,但是由於集合不能包含重複元素,因此set1中只保留了一個數字1。
集合的基本操作也很簡單,比如添加元素使用add()方法,刪除元素使用remove()方法:
set1.add(6) set1.remove(3)
以上兩行代碼將分別向set1中添加數字6,以及刪除數字3。
三、集合的常用操作
1. 集合求交集
求交集可以使用&運算符或者intersection()方法,比如:
set1 = {1, 2, 3, 4, 5} set2 = {3, 4, 5, 6, 7} set3 = set1 & set2 set4 = set1.intersection(set2)
這兩行代碼都將set1和set2的交集賦值給set3和set4。
2. 集合求並集
求並集可以使用|運算符或者union()方法,比如:
set1 = {1, 2, 3, 4, 5} set2 = {3, 4, 5, 6, 7} set3 = set1 | set2 set4 = set1.union(set2)
這兩行代碼都將set1和set2的並集賦值給set3和set4。
3. 集合求差集
求差集可以使用-運算符或者difference()方法,比如:
set1 = {1, 2, 3, 4, 5} set2 = {3, 4, 5, 6, 7} set3 = set1 - set2 set4 = set1.difference(set2)
這兩行代碼都將set1和set2的差集賦值給set3和set4。
4. 集合去重
去重可以使用set()函數,比如:
list1 = [1, 2, 3, 4, 5, 5, 4, 3, 2, 1] set1 = set(list1)
這行代碼將list1去重後賦值給set1。
四、實例
以下是一個實例,演示了如何通過集合操作,對兩個列表去重並求交集和並集:
list1 = [1, 2, 3, 4, 5, 5, 4, 3, 2, 1] list2 = [3, 4, 5, 6, 7, 7, 6, 5, 4, 3] # 去重 set1 = set(list1) set2 = set(list2) # 求交集和並集 intersection_set = set1 & set2 union_set = set1 | set2 print("intersection_set:", intersection_set) print("union_set:", union_set)
輸出結果如下:
intersection_set: {3, 4, 5} union_set: {1, 2, 3, 4, 5, 6, 7}
五、總結
本文主要介紹了Python中集合的概念、創建、基本操作和常用操作,其中包括了求交集、求並集、求差集和去重等常用操作。集合操作不僅簡單易用,而且非常高效,因此在Python中使用集合操作來處理數據,可以大大提高數據處理效率。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/241619.html