请稍候,加载中....

集合类型方法

集合的方法主要是一些集合的运算

集合实例方法

实例方法通过实例执行,set1表示第一个集合实例,set2表示第二个集合实例

方法名 描述
set1.isdisjoint(set2)
# 两个集合如果交集为空返回True
sets_1 = {1,3,4}
sets_2 = {2,5,6}
sets_3 = {1,2,5}

sets_1.isdisjoint(sets_2)
# 输出 True

sets_1.isdisjoint(sets_3)
# 输出 False
set1.issubset(set2)
# 如果是另一个集合的子集返回True
sets_1 = {1,3,4}
sets_2 = {1, 4}
sets_3 = {1,3,5}

sets_2.issubset(sets_1)
# True

sets_3.issubset(sets_1)
# False
set1.issuperset(set2)
# 如果是另一个集合的超集返回True
sets_1 = {1,3,4}
sets_2 = {1, 4}
sets_3 = {1,3,5}

sets_1.issuperset(sets_2)
# True

sets_1.issuperset(sets_3)
# False
set1.symmetric_difference(set2)
# 对称差集运算, 相当于 set1^set2
set_1 = {1, 2}
set_2 = {2, 4}
set_3 = set_1.symmetric_difference(set_2)
# {1,4}
set1.update(set2, set3, ....)
# 添加所有新集合,相当于 set1 |= set2 |= set3
set_1 = {1, 2}
set_2 = {2, 4}
set_3 = {3, 5}
set_1.update(set_2, set_3)
# set_1
# {1, 2, 3, 4, 5}
set1.intersection_update(set1, set2....)
# 更新集合,只保留交集, 相当于 set1 &= set2 &= set3
set_1 = {1, 2}
set_2 = {2, 4}
set_3 = {3, 2}
set_1.intersection_update(set_2, set_3)
# set_1
# {2}
set1.difference_update(set1, set2...)
# 更新集合,只保留差集部分, 相当于 set1 -= set2 -= set3...
set_1 = {1, 2}
set_2 = {2, 4}
set_3 = {3, 2}
set_1.difference_update(set_2, set_3)
# set_1
# {1}
set1.add(item)
# 向集合中添加新的元素
set_1 = {1,3,5}
set_1.add(10)
# set_1
# {1, 3, 5, 10}
set1.remove(item)
# 移除集合中的某个元素,remove方法如果元素不存在,会引发错误
set_1 = {1,3,5}
set_1.remove(3)
# set_1
# {1, 5}
set1.discard(item)
# 移除集合中的某个元素,如果元素不存在不会报错
set_1 = {1,3,5}
set_1.discard(1)
set_1.discard(6)
print(set_1)
set1.pop()
# 从集合中弹出并返回一个元素,pop弹出元素是无序的,如果集合为空,弹出会报错
set_1 = {1,3,5}
s = set_1.pop()
print(s)
set1.clear()

清空集合

set1.copy()
# 拷贝一个新集合
set_1 = {1, 2, 3}
set_2 = set_1.copy()
print(set_2)

frozenset对象

不可变集合对象

由于是不可变类型,所以没有update,intersection_update,difference_update,symmetric_difference_update,add,remove,discard,pop,clear等修改操作


Python学习手册-