set类方法

本文深入讲解了Python中集合的基本操作,包括创建、添加、删除、并集、交集、差集和对称差集等,并介绍了集合的特点如元素唯一性和无序性。同时,文章还探讨了集合的迭代特性及在寻找列表交集时的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

set()
将目标变量转换为集合形式。
set(字符串)会将字符串中每个字符变为集合元素,set([列表])会将列表中每一个元素变为集合中的元素。

s1 = set('hello')
print(s)
s2 = set(["alex", "alex", "nice"])
print(s2)

.add()
向集合中添加元素

s = {1, 2, 3, 4, 5, 6}
s.add('3')
print(s)

.clear()
清空集合

s = {1, 2 ,3, 4, 5}
s.clear()
print(s)

.copy()
浅拷贝

s = {1, 2 ,3, 4, 5}
s1 = s.copy()
print(s1)

.pop()
随机删除集合中的一个元素。

s = {1, 2 ,3, 4, 5, "a"}
s.pop()
print(s)

.remove()
删除指定的元素,如果被删除项不在原集合中程序会报错。

s = {1, 2 ,3, 4, 5, "a"}
s.remove('a')
print(s)

.discard()
删除指定元素,但当被删除元素不存在时不会报错。

s = {1, 2 ,3, 4, 5, "a"}
s.discard('dsa')
print(s)

.intersection()
求交集
seta.intersection(setb)的符号表达为seta & setb

s1 = {"a", "b", "c", 1, 2, 3, 4}
s2 = {"a", "c", 4}
s3 = s1.intersection(s2)
s4 = s1 & s2
print(s3, s4)

.union()
求并集
seta.union(setb)的符号表达为seta | setb

s1 = {"a", "b", "c", 1, 2, 3, 4}
s2 = {"a", "c", 4}
s3 = s1.union(s2)
s4 = s1 | s2
print(s3, s4)

.difference()
求差集
seta.difference(setb)的符号表达为seta - setb

s1 = {"a", "b", "c", 1, 2, 3, 4}
s2 = {"a", "c", 4}
s3 = s1.difference(s2)
s4 = s1 - s2
print(s3, s4)

.symmetric_difference()、.symmetric_difference_update()
求交叉补集,即县求并集后减去交集。
seta.symmetric_difference(setb)的符号表达为seta ^ setb
seta.symmetric_difference_update(setb)方法为将seta与setb的交叉补集赋值给seta

s1 = {"a", "b", "c", 1, 2, 3, 4}
s2 = {"a", "c", 4}
s3 = s1.symmetric_difference(s2)
s4 = s1 ^ s2
print(s3, s4)
s1 = {"a", "b", "c", 1, 2, 3, 4}
s2 = {"a", "c", 4, "dsa"}
s1.symmetric_difference_update(s2)
print(s2)

.isdisjoin()
判断是否不存在交集,返回布尔值。

s1 = {"a", "b", "c", 1, 2, 3, 4}
s2 = {"a", "c", 4}
print(s1.isdisjoin(s2))

…issubset()
判断是否是子集,返回布尔值。

s1 = {"a", "b", "c", 1, 2, 3, 4}
s2 = {"a", "c", 4}
print(s1,issubset(s2)) #判断s1是否是s2的子集

.issuperset()
判断是否是父集,返回布尔值。

s1 = {"a", "b", "c", 1, 2, 3, 4}
s2 = {"a", "c", 4}
print(s1.issuperset(s2))#判断s1是否是s2的父集

.update()
更新集合中多个元素。
.add()方法只能添加一个元素。

s1 = {"a", "b", "c", 1, 2, 3, 4}
s2 = {"a", "b", "c", 4, "dsa"}
s1.update(s2)
print(s1)

集合的其他内容:
集合内的元素必须是不同元素,所以可以通过集合来寻找两个列表相同的部分。

集合内的元素是无序的,所以无引索、切片。

set集合是可变类型,frozenset集合是不可变类型。

集合内元素可以迭代。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值