python基础学习-集合
"""
集合:
无序, 不允许重复, 不支持下标索引,允许修改
# 字面量
{ 元素1,元素2, 元素3 }
# 定义变量
变量名称 = { 元素1,元素2, 元素3 }
# 定义空集合
变量名称 = set()
方法:
1. 添加新元素
集合.add(元素)
2. 移除元素
集合.remove(元素)
3. 随机取出元素
element = 集合.pop()
4. 清空 集合.clear()
5. 取出两个集合的差集
新集合 = 集合1.difference(集合2) 取出集合1有而集合2没有的
得到新集合,集合1, 集合2不变
6. 消除两集合差集
集合1.difference_update(集合2)
在集合1中删除和集合2相同的元素
7. 两集合合并
新集合 = 集合1.union(集合2)
得到新集合,集合1, 集合2不变
8. 集合数量 len(集合)
交并差运算
Python中的集合跟数学上的集合一样,可以进行交集、并集、差集等运算,而且可以通过运算符和方法调用两种方式来进行操作,代码如下所示。
set1 = {1, 2, 3, 4, 5, 6, 7}
set2 = {2, 4, 6, 8, 10}
# 交集
# 方法一: 使用 & 运算符
print(set1 & set2) # {2, 4, 6}
# 方法二: 使用intersection方法
print(set1.intersection(set2)) # {2, 4, 6}
# 并集
# 方法一: 使用 | 运算符
print(set1 | set2) # {1, 2, 3, 4, 5, 6, 7, 8, 10}
# 方法二: 使用union方法
print(set1.union(set2)) # {1, 2, 3, 4, 5, 6, 7, 8, 10}
# 差集
# 方法一: 使用 - 运算符
print(set1 - set2) # {1, 3, 5, 7}
# 方法二: 使用difference方法
print(set1.difference(set2)) # {1, 3, 5, 7}
# 对称差
# 方法一: 使用 ^ 运算符
print(set1 ^ set2) # {1, 3, 5, 7, 8, 10}
# 方法二: 使用symmetric_difference方法
print(set1.symmetric_difference(set2)) # {1, 3, 5, 7, 8, 10}
# 方法三: 对称差相当于两个集合的并集减去交集
print((set1 | set2) - (set1 & set2)) # {1, 3, 5, 7, 8, 10}
不可以用while循环
用for循环遍历
"""

浙公网安备 33010602011771号