集合
勤奋是你生命的密码,能译出你一部壮丽的史诗。 –佚名
集合是一个用于存放批量元素得数据类型,它不是有序的,其中的元素没有顺序关系.集合中得元素没有重复,重复的元素将自动剔除最后只留下一个
集合用{}表示,不同于字典,花括号中放的是一个个数据, 而不是键值对
集合是可变得,我们可以向里面添加,删除,修改 元素
创建集合
- 创建包含元素的集合
numbers = {1,2,3}
- 创建空集合
集合 = set()
注意创建空集合千万不能使用{},那样表示空字典 而是使用 set(),这才表示空集合
empty_set = set()
set()
集合元素得添加
向集合中添加一个元素
# 集合.add(元素)
numbers = {1,2}
numbers.add(3)
print(numbers)
# 结果{1,2,3}
向集合中重复添加元素时候,会被去重处理
numbers = {1,2}
numbers.add(2)
print(numbers)
# 结果{1,2}
从另一个集合中批量添加元素
# 集合.update(另一集合)
numbers_1 = {1,2}
numbers_2 = {3,4}
result = numbers_1.update(numbers_2)
# 结果
# {1,2,3,4}
集合元素的获取
集合不能像列表那样通过索引来获取元素,也不能像字典那样通过键来获取值,集合没法直接获取到某个指定的元素,要想获取元素,只有遍历
虽然集合不能直接获取到元素,但是我们依然可以用 in 关键字来判断元素是否在集合中
查看元素是否存在于集合中
letters = {'a','b','c'}
if 'a' in letters:
print('确实存在')
# 结果 True
随机删除一个元素,并返回这个元素
- pop()
# 元素 = 集合.pop()
使用pop方法随机删除,这个元素会返回
numbers = {1,2,3}
numbers.pop()
# 结果 {1,3}
删除一个指定的元素
- remove
# 集合.remove(元素)
numbers = {1,2,3}
numbers.remove(2)
# 结果 {1,3} 要是没有的话会抛出异常
删除一个指定的元素,且不抛异常
- discard
# 集合.discard(元素)
numbers = {1,2,3}
numbers.discard(4)
# 结果不报错
清空所有元素
- clear
# 集合.clear()
numbers = {1,2,3}
numbers.clear()
print(numbers)
# 结果 set()
集合的运算
求交集&
numbers1 = {1,2,3}
numbers2 = {2,3,4}
numbers3 = {2,3,5}
result = numbers1&numbers2&numbers3
# 结果{2,3}
求并集 |
numbers1 = {1,2,3}
numbers2 = {2,3,4}
numbers3 = {4,3,5}
result = numbers1| numbers2 | numbers3
# 结果
# {1,2,3,4,5}
求差集 -
numbers1 = {1,2,3}
numbers2 = {2,3,4}
numbers3 = {4,3,5}
result = numbers1 - numbers2 - numbers3
# 结果 1
判断是否为子集
- issubset()
numbers_1 = {2,3}
numbers_2 = {1,2,3}
result = numbers_1.issubset(numbers_2)
print(result)
# 结果True