1. 介绍
Python是一种流行的编程语言,其强大的集合(set)数据结构使得它在数据处理方面非常实用。本文将为大家介绍Python集合的基本概念和常用运算。
2. 正文
一、创建集合
Python中可以通过使用花括号"{"和"}"或者set()函数来创建一个集合。
s1 = {1, 2, 3, 4, 5}
s2 = set([2, 3, 6, 7, 8])
注意:用花括号创建空集合会创建一个空字典。
s3 = {} #创建的是字典类型
s4 = set() #创建的是空集合类型
二、集合运算
1. 交集
两个集合的交集,即包含两个集合共同元素的集合,可以使用“&”操作符,或者intersection()方法。
s1 = {1, 2, 3, 4}
s2 = {2, 3, 4, 5}
s3 = s1 & s2 #结果为{2, 3, 4}
s4 = s1.intersection(s2) #结果为{2, 3, 4}
2. 并集
两个集合的并集,即包含两个集合所有元素的集合,可以使用“|”操作符,或者union()方法。
s1 = {1, 2, 3, 4}
s2 = {2, 3, 4, 5}
s3 = s1 | s2 #结果为{1, 2, 3, 4, 5}
s4 = s1.union(s2) #结果为{1, 2, 3, 4, 5}
3. 差集
两个集合的差集,即包含第一个集合中不包含第二个集合元素的集合,可以使用“-”操作符,或者difference()方法。
s1 = {1, 2, 3, 4}
s2 = {2, 3, 4, 5}
s3 = s1 - s2 #结果为{1}
s4 = s1.difference(s2) #结果为{1}
4. 对称差集
两个集合的对称差集,即包含两个集合中不共同的元素的集合,可以使用“^”操作符,或者symmetric_difference()方法。
s1 = {1, 2, 3, 4}
s2 = {2, 3, 4, 5}
s3 = s1 ^ s2 #结果为{1, 5}
s4 = s1.symmetric_difference(s2) #结果为{1, 5}
三、子集和超集
如果一个集合中所有元素都包含在另一个集合中,则称前一个集合是后一个集合的子集。反之则称后一个集合是前一个集合的超集。这可以使用issubset()和issuperset()方法来判断。
s1 = {1, 2, 3}
s2 = {2, 3, 4, 5}
s3 = {1, 2, 3, 4, 5}
print(s1.issubset(s2)) #结果为False
print(s2.issubset(s3)) #结果为True
print(s3.issuperset(s2)) #结果为True
3. 总结
本文介绍了Python集合的基本概念和常用运算。学习了集合运算之后,可以更方便地进行数据处理。