CodeGym /课程 /Python SELF ZH /集合操作

集合操作

Python SELF ZH
第 9 级 , 课程 8
可用

8.1 操作符和方法表

Python语言支持操作符重载,这意味着对对象的操作不仅可以通过方法,还可以通过操作符来进行,比如:+, -, *, /, | 等。

set(集合)类重载了所有可能的操作符,所以操作集合非常简单,就像数学中处理集合一样。

这些操作符的表格如下:

操作符 方法 描述
| union() 返回两个集合的并集。
& intersection() 返回集合的交集(只有共同的元素)。
- difference() 返回集合的差集(仅在第一个集合中的元素)。
^ symmetric_difference() 返回集合的对称差(仅在一个集合中但不在两个集合中的元素)。
<= issubset() 检查一个集合是否为另一个集合的子集。
< issubset() 检查一个集合是否为另一个集合的真子集(严格子集)。
>= issuperset() 检查一个集合是否为另一个集合的超集。
> issuperset() 检查一个集合是否为另一个集合的真超集(严格超集)。
== __eq__() 检查集合是否相等(包含相同的元素)。
!= __ne__() 检查集合是否不相等(包含不同的元素)。

使用操作符处理集合非常方便,你马上就会体验到。

8.2 通过操作符处理集合

并集 (OR)

操作符 | 使用 union() 函数

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
union_set = set1 | set2
print(union_set)  # 输出: {1, 2, 3, 4, 5}
                    

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
union_set = set1.union(set2)  
print(union_set)  # 输出: {1, 2, 3, 4, 5}
                            
                    

交集 (AND)

操作符 & 使用 intersection() 函数

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
intersection_set = set1 & set2
print(intersection_set)  # 输出: {3}
                    

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
intersection_set = set1.intersection(set2)
print(intersection_set)  # 输出: {3}

差集 (DIFFERENCE)

操作符 - 使用 difference() 函数

 

set1 = {1, 2, 3, 4}
set2 = {3, 4, 5}
difference_set = set1 - set2
print(difference_set)  # 输出: {1, 2}

                    

 

set1 = {1, 2, 3, 4}
set2 = {3, 4, 5}
difference_set = set1.difference(set2)
print(difference_set)  # 输出: {1, 2}

对称差 (SYMMETRIC DIFFERENCE)

操作符 ^ 使用 symmetric_difference() 函数

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
s_diff = set1 ^ set2
print(s_diff)  # 输出: {1, 2, 4, 5}
                    

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
s_diff = set1.symmetric_difference(set2)
print(s_diff)  # 输出: {1, 2, 4, 5}

奇怪的是,没有地方使用 +* 操作符,但俗话说得好,开发者才是老板。Python语言的开发者这样决定了,他们肯定有他们的道理。

1
调查/小测验
Python中的集合第 9 级,课程 8
不可用
Python中的集合
Python中的集合
评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION