下面是对于“Python中基础数据类型set集合知识点总结”的完整攻略:
1. 什么是set?
set是Python的一种基本的数据类型,它是一个无序且不重复的集合(一个元素在set中只能出现一次)。在set中,可以进行成员检测、删除重复元素等操作。
2. 创建set
可以用set()函数来创建一个空集合,也可以使用大括号{}来创建一个集合。但是,使用大括号创建的集合需要注意,因为大括号也可以用来创建字典,所以如果要创建空set,必须使用set()函数来创建。
empty_set = set() # 创建一个空集合
print(empty_set) # 输出 set()
fruits = {'apple', 'banana', 'orange', 'apple', 'pear'} # 定义一个包含重复元素的集合
print(fruits) # 输出 {'banana', 'apple', 'orange', 'pear'}
3. set的操作
3.1 成员检测
可以使用in来检测集合中是否包含某个元素。
fruits = {'apple', 'banana', 'orange', 'pear'}
print('pear' in fruits) # 输出 True
print('pineapple' in fruits) # 输出 False
3.2 集合操作
set除了常规的增删查操作,还支持诸如并集、交集、差集等操作。
set1 = set(range(10)) # 创建 0 到 9 的集合
set2 = set(range(5, 15)) # 创建 5 到 14 的集合
print(set1.union(set2)) # 输出并集 {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14}
print(set1.intersection(set2)) # 输出交集 {5, 6, 7, 8, 9}
print(set1.difference(set2)) # 输出差集 {0, 1, 2, 3, 4}
set1.update(set2) # 将set2合并到set1中,与set1 |= set2 等价
print(set1) # 输出 {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14}
4. set的应用
4.1 去除重复元素
set最常见的应用是用来去除一个列表中重复的元素。可以将列表转换成set集合,再将集合转换成列表。
numbers = [1, 2, 3, 4, 4, 5, 6, 6, 7]
unique_numbers = list(set(numbers))
print(unique_numbers) # 输出 [1, 2, 3, 4, 5, 6, 7]
4.2 判断两个字符串是否包含相同的字符
set还可以用来判断两个字符串是否包含相同的字符。将两个字符串转换成set集合,然后计算它们的交集是否为空即可。
def contains_common_element(s1, s2):
return len(set(s1).intersection(set(s2))) > 0
print(contains_common_element('hello', 'world')) # 输出 True
print(contains_common_element('foo', 'bar')) # 输出 False
以上就是关于“Python中基础数据类型set集合”的总结了。