本文將詳細介紹python中的對稱差集,包括定義、用法、實例等方面,幫助讀者更好地應用對稱差集。
一、定義
所謂對稱差集,是指兩個集合中不共有的元素組成的集合。換句話說,對稱差集是兩個集合都沒有的元素的集合。Python中的對稱差集用符號’^’表示。
set1 = {1, 2, 3} set2 = {2, 3, 4} print(set1 ^ set2) //輸出:{1, 4}
以上代碼中,set1和set2是兩個集合,對稱差集用’^’表示,打印結果是{1, 4},即兩個集合都不含的元素集合。
二、用法
1.創建兩個集合
使用python內置函數set()創建兩個集合:
set1 = set([1, 2, 3]) set2 = set([2, 3, 4])
可以創建兩個集合,通過set()方法構造時可以傳入任何可迭代對象,例如列表、元組等。
2.求對稱差集
通過’^’運算符求兩個集合的對稱差集
sym_diff = set1 ^ set2
運算結果sym_diff為兩個集合的對稱差集
3.原地修改對象
在原地修改一個集合併不會創建一個新的集合,而是修改原先存在的集合。
set1 ^= set2
以上代碼將set1和set2的對稱差集原地修改為set1,最終set1的值為{1, 4}。
三、實例
1.查找兩個集合中不同的元素
可以使用對稱差集來查找兩個集合中不同的元素。
old_list = ['apple', 'banana', 'orange'] new_list = ['banana', 'cabbage', 'durian'] old_set = set(old_list) new_set = set(new_list) diff_set = old_set ^ new_set print(diff_set) //輸出:{'apple', 'cabbage', 'orange', 'durian'}
以上代碼首先將兩個列錶轉化為集合,並取得其對稱差集,最終得到的是兩個列表中不同的元素。
2.查找兩個字典中key不同的項
通過對稱差集,可以找出兩個字典中key不同的項。
d1 = {'a': 1, 'b': 2, 'c': 3} d2 = {'b': 2, 'c': 3, 'd': 4} diff_set = set(d1) ^ set(d2) print(diff_set) //輸出:{'d', 'a'}
以上代碼創建了兩個字典d1和d2,並對它們的key取了對稱差集,得到的結果是d1和d2中key不同的項。
3.查找兩個列表中不同的元素
對稱差集也可以用來查找兩個列表中不同的元素。
old_list = [1, 2, 3] new_list = [3, 4, 5] old_set = set(old_list) new_set = set(new_list) diff_set = old_set ^ new_set print(diff_set) //輸出:{1, 2, 4, 5}
以上代碼創建了兩個列表old_list和new_list,通過對稱差集找出了它們中不同的元素。
總結
對稱差集是python中基本的集合操作,可以用於查找兩個集合中不同的元素。本文通過介紹對稱差集的定義、用法、實例等方面,讓讀者更好地應用對稱差集。
原創文章,作者:CDEYK,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/373475.html