Python集合支持四个伟大的操作:
- 交叉:两个集合有共同的元素
- 联合:两个集合中的所有元素
- 差异:一个集合中存在的元素,而另一个集合中没有
- 对称的差异:两个集合中的元素都不存在于另一个集合中
为了更好地理解,请看下面的图片:
这里, A 包含{a,b,c,d,e}, B 包含{a,e,f,g}。所以 A-B={b,c,d}, B-A={f,g}。
Python 集合差分
Python set difference()是一个内置 函数 ,可以帮助我们找到两个集合之间的差异。 它的工作原理类似于数学上的相交 (A∩B)。这意味着,如果A和B是两个集合,那么它们的差值将是。
A-B = A-(A∩B)
B-A = B-(A∩B)
difference()方法返回两个集合的集合差。如果A和B是两个集合。A和B之间的集合之差是只存在于集合A中而不存在于B中的元素的集合。
语法
First_Set.difference(Second_Set)
上面的语法将帮助我们找到 First_Set-Second_Set之间的差异 。
因此,如果我们想找到 A-B, 语法将是如下:
A.difference(B)
返回值
difference()函数返回两个给定集合的差值,而不改变原始集合。这意味着它返回一个新的集合。
编程实例
请看下面的代码示例:
# app.py
# Declaring two sets
A = {'a', 'b', 'c', 'd', 'e'}
B = {'a', 'e', 'f', 'g'}
# Now we will apply difference() to find
# A-B
print("Difference between A-B is: ", A.difference(B))
# B-A
print("Difference between B-A is: ", B.difference(A))
输出
Difference between A-B is: {'c', 'b', 'd'}
Difference between B-A is: {'g', 'f'}
在这个例子中,我们声明了两个集合,A和B,然后我们用difference()方法找到这两个集合的差。
使用减号(-)运算符
请看下面的代码:
# app.py
# Declaring two sets
A = {'a', 'b', 'c', 'd', 'e'}
B = {'a', 'e', 'f', 'g'}
# Now we will apply the minus operator to find
# A-B
print("Difference between A-B is: ", A-B)
# B-A
print("Difference between B-A is: ", B-A)
输出
Difference between A-B is: {'d', 'c', 'b'}
Difference between B-A is: {'g', 'f'}
在这个例子中,我们声明了两个集合,A和B,然后我们使用减号运算符(-)来找到这两个集合之间的差。
原来的集合没有改变,它保持不变。
在Python中两个集合的差值等于两个集合中元素数量的差。
本教程就到此为止。
