简介:集合(set)是一个无序的不重复元素序列。可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
图解:
源码:
# -*- coding: utf-8 -*-
# time: 2022/5/23 23:00
# file: setDemo.py
# 公众号: 玩转测试开发
# 交集: intersection 或 &
# 并集: union 或 |
# 差集: difference 或 -
# 对称差集 = 两个集合的 并集 减去 交集
# 子集: issubset 或 issuperset
s1 = {"a", "b"}
s2 = {"b", "c", "d"}
s3 = {"b"}
# 交集
print("****** 交集 ******")
print(s1.intersection(s2)) # {'b'}
print(s1 & s2) # {'b'}
# 并集
print("****** 并集 ******")
print(s1.union(s2)) # {'a', 'b', 'c', 'd'} 不含重复元素
print(s1 | s2) # {'a', 'b', 'c', 'd'} 不含重复元素
# 差集
print("****** 差集 ******")
print(s1.difference(s2)) # s1 - s2 = {'a'}
print(s1 - s2) # s1 - s2 = {'a'}
print(s2.difference(s1)) # s2 - s1 = {'c', 'd'}
# 对称差集 = 两个集合的 并集 减去 交集
print("****** 对称差集 ******")
print(s1.symmetric_difference(s2)) # {"a", "b", "c", "d"} - {"b"} = {"a","c", "d"}
print(s1 ^ s2)
# 子集
print("****** 子集 ******")
# s3 的所有元素是否都包含在集合 s2 中: True
print(s3.issubset(s2))
# 判断集合 s3 的所有元素是否都包含在集合 s2 中: True
print(s2.issuperset(s3))
微信公众号:玩转测试开发
欢迎关注,共同进步,谢谢!