集合类型:
- 散列类型 - 无序 不重复
- 数值类型 ( int float 布尔 字符串 列表 元祖 )等
定义方法:
- set() 类型转换
- ('夏柔','520') 直接定义
- 不可添加可变类型
三种运算:
- wpon & wpon2 交集
- wpon | wpon2 并集
- wpon - wpon2 差集
扩展: 集合是大括号表示
空集合演示:
wpon = set() print(wpon) 输出结果: set()
集合演示:
wpon = {1,2,(1,2)} print(wpon) 输出结果: {1, 2, (1, 2)} # 注意没有排序, 顺序随机
扩展: 可添加元祖(因为不可变), 列表可变, 所以无法添加
# 交集 & 共有的 演示
>>> wpon = {1,2,3,4,5} >>> wpon2 = {1,2,3,4,5,6,7} >>> wpon & wpon2 {1, 2, 3, 4, 5}
# 并集 & 所有的 演示
>>> wpon = {1,2,3,4,5} >>> wpon2 = {1,2,3,4,5,6,7} >>> wpon | wpon2 {1, 2, 3, 4, 5, 6, 7}
# - 差集 & 把一样的部分剪掉 演示
>>> wpon3 = {1,2,3,4} >>> wpon4 = {1,2,3,5} >>> wpon3 - wpon4 {4}
# 集合的增加方法
wpon = {1,2,3} wpon.add('夏柔') print(wpon) {'夏柔', 1, 2, 3}
# 集合的删除方法(随机删除)
wpon = {1,2,3} wpon.pop() print(wpon) {2, 3}
# 集合的删除方法(指定删除)
wpon = {1,2,3} wpon.remove(2) print(wpon) {1, 3}
扩展: 非下标, 删啥写啥
# 集合的迭代方法
wpon = {1,2,3} wpon.update('xiarouxiarou') print(wpon) {1, 2, 3, 'i', 'o', 'u', 'a', 'r', 'x'}
# 集合的判断是否没有交集
>>> wpon2 = {1,2,3,4,5,6,7} >>> wpon = {1,2,3} >>> wpon.isdisjoint(wpon2) False # 有是false 没有是true
没有的:
>>> wpon44 = {1} >>> wpon55 = {2} >>> wpon44.isdisjoint(wpon55) True # 有是false 没有是true
# 集合的判断是否没有子集
>>> wpon123 = {1,2,3} >>> wpon124 = {1,2,4} >>> wpon123.issubset(wpon124) False
# 集合的判断是否是父集
>>> wpon233 = {3,4} >>> wpon244 = {3,4,5} >>> wpon233.issuperset(wpon244) False >>> wpon244.issuperset(wpon233) True