Python集合(set)

集合是盛放多个数据的一种类型。
集合中的元素是无序的,唯一的、不可改变类型,可以使用大括号 { } 或者 set() 函数创建集合

格式:

(1). 变量名={元素1,元素2,元素3,…}
(2). 变量名=set(序列) 例如 变量名=set(元组,自动,字符串)

注意事项:

1.创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
2.集合中的元素必须是不可修改类型

集合的基本操作
(1) .添加操作

语法格式如下:s.add( x )
实例:

set1 = set(("B", "A", "C"))
set1.add("DDDDDDDD")
print(set1)

运行结果:

{'B', 'A', 'C', 'DDDDDDDD'}

还有一个方法,也可以添加元素,且参数可以是列表,元组,字典等,语法格式如下:s.update( x )
x 可以有多个,用逗号分开
实例:

# 例1
set1 = set(("B", "A", "C"))
set1.update({1,2})
print(set1)
################################
# 例2
set1 = set(("B", "A", "C"))
set1.update([1,2],[2,1])
print(set1)

运行结果:

# 例1运行结果
{1, 2, 'B', 'A', 'C'}
###############################
# 例2运行结果
{1, 2, 'B', 'A', 'C'} 
#因为集合中的元素是唯一的,1、2只打印一次
(2) .删除操作

pop、remove、clear、del

set2 = {'哈哈','嘻嘻','嘿嘿'}
# 1.pop() 随机弹出一个
set2.pop()
print(set2)
# 2.remove()
set2.remove('哈哈')
print(set2)
# 3.clear
set2.clear()
print(set2)
# 4.del
del set2
print(set2)
(3) .遍历集合
set3 = {1,2,3,4,5}
for i in set3:
    print(i)
集合数学运算

1.交集(& 或者 intersection) 取公共部分
2.并集 (| 或者 union) 取去除重复部分内容
3.差集 (­ 或者 difference)取set1或者set2中除去公共部分的内容
4.反交集 (^ 或者 symmetric_difference):除了交集的部分
5.子集 (< 或者 issubset)
6.超集 (> 或者 issuperset)
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

集合内置方法完整列表
方法描述
add()为集合添加元素
clear()移除集合中的所有元素
copy()拷贝一个集合
difference()返回多个集合的差集
difference_update()移除集合中的元素,该元素在指定的集合也存在
discard()删除集合中指定的元素
intersection()返回集合的交集
intersection_update()返回集合的交集
isdisjoint()判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False
issubset()判断指定集合是否为该方法参数集合的子集
issuperset()判断该方法的参数集合是否为指定集合的子集
pop()随机移除元素
remove()移除指定元素
symmetric_difference()返回两个集合中不重复的元素集合
symmetric_difference_update()移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中
union()返回两个集合的并集
update()给集合添加元素
集合应用场景

由于元素在集合中只能存储一次,集合 (set) 可以用来把重复项从其他数据类型中过滤掉。 把其他类型转换为一个集合 (set) ,然后再转换回来即可。
在处理较大的数据集合的时候(例如,数据库查询结果) ,两个集合的交集包含了两个领域中共有的对象,并集包含了两个集合中的所有项目。

以下是Python集合set的一些练习题: 1. 创建一个新的空集 ```python set1 = set() ``` 2. 迭代集合 ```python set2 = {"apple", "banana", "cherry"} for x in set2: print(x) ``` 3. 在集合中添加成员 ```python set3 = {"apple", "banana", "cherry"} set3.add("orange") print(set3) ``` 4. 从Python集合中删除成员 ```python set4 = {"apple", "banana", "cherry"} set4.remove("banana") print(set4) ``` 5. 存在则从该集合中删除该成员 ```python set5 = {"apple", "banana", "cherry"} set5.discard("banana") print(set5) ``` 6. 集合的交集 ```python set6a = {1, 2, 3} set6b = {2, 3, 4} set6c = set6a.intersection(set6b) print(set6c) ``` 7. 集合的并集 ```python set7a = {1, 2, 3} set7b = {2, 3, 4} set7c = set7a.union(set7b) print(set7c) ``` 8. 创建集合差异 ```python set8a = {1, 2, 3} set8b = {2, 3, 4} set8c = set8a.difference(set8b) print(set8c) ``` 9. 检查一个集合是否是另一个集合的子集 ```python set9a = {1, 2, 3} set9b = {2, 3} set9c = set9b.issubset(set9a) print(set9c) ``` 10. 从给定的集合中删除所有元素 ```python set10 = {"Red", "Green", "Black", "White"} set10.clear() print(set10) ``` 11. 在一个集合中查找最大值和最小值 ```python set11 = {1, 2, 3, 4, 5} max_value = max(set11) min_value = min(set11) print("Max value in set: ", max_value) print("Min value in set: ", min_value) ``` 12. 查找集合的长度 ```python set12 = {1, 2, 3, 4, 5} length = len(set12) print("Length of set: ", length) ``` 13. 检查给定值是否存在于集合中 ```python set13 = {1, 2, 3, 4, 5} value = 3 if value in set13: print("Value exists in set") else: print("Value does not exist in set") ``` 14. 检查两个给定的集合是否没有共同的元素 ```python set14a = {1, 2, 3} set14b = {4, 5, 6} set14c = set14a.isdisjoint(set14b) print(set14c) ``` 15. 从第一组中删除第二组的交集 ```python set15a = {1, 2, 3} set15b = {2, 3, 4} set15a.difference_update(set15b) print(set15a) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值