Python入门--集合

参考文献

集合的创建

#一、
#{}
s = {3,4,6,32,7,6}
print(s)
#{32, 3, 4, 6, 7}  无序性、互异性

#二、
#内置函数
s1 = set(range(6))
print(s1)
#{0, 1, 2, 3, 4, 5}
# s2 = set(①列表 ②元祖 ③字符串)
#空集合创建
s3 = {}
print(type(s3))
# <class 'dict'> error type
s3 = set()
print(s3,type(s3))
# set() <class 'set'>

#三、
#集合生成式
s4 = {i for i in range(5)}
print(s4)
#{0, 1, 2, 3, 4}

集合的增删

#一、
#add() 一次增加一个元素
s = {4,6,32,7,6}
print(s)
#{32, 4, 6, 7}
s.add(10)
print(s)
#{32, 4, 6, 7, 10}

#二、
#update() 一次增加至少一个元素
s.update({20,30})
print(s)
#{32, 4, 6, 7, 10, 20, 30}
# s.update(集合、列表、元组)

#三、
#remove() 删除一个指定元素,元素不存在抛出异常
s.remove(10)
print(s)
#{32, 4, 6, 7, 20, 30}
#
#KeyError: 5

#四、
#discard() 删除一个指定元素 元素不存在不抛出异常
s.discard(7)
print(s)
#{32, 4, 6, 20, 30}
s.discard(100)
print(s)
#{32, 4, 6, 20, 30} 不抛出异常

#五、
#pop() 一次删除一个任意元素
s.pop()
print(s)
#{4, 6, 20, 30}

#六、
#clear() 清空集合
s.clear()
print(s)
#set()

集合间的关系

#一、
#两集合是否相同
s1 = {4,6,32,7,6}
s2 = {4,5,2,6,8}
print(s1==s2)
#False

#二、
#一个集合是否是另一个集合的子集
s3 = {6,32}
print(s3.issubset(s1))
#True s1是s3的子集
print(s1.issuperset(s3))
#True s3是s1的超集

#三、
#两集合时候有交集
s4 = {100,200}
print(s4.isdisjoint(s1))
#True  s4y与s1没有交集是True
print(s2.isdisjoint(s1))
#False s2y与s1没有交集是False

集合的数学操作

在这里插入图片描述


s1 = {4,6,32,7,6}
s2 = {4,5,2,6,8}
#一、
#交集
print(s1 & s2,s1.intersection(s2))
#{4, 6} {4, 6}

#二、
#并集
print(s1 | s2,s1.union(s2))
#{32, 2, 4, 5, 6, 7, 8} {32, 2, 4, 5, 6, 7, 8}

#三、
#差集
print(s1 - s2,s1.difference(s2))
#{32, 7} {32, 7}

#四
#对称差集
print(s1 ^ s2,(s1|s2)-(s1&s2),s1.symmetric_difference(s2))
#{32, 2, 5, 7, 8} {32, 2, 5, 7, 8} {32, 2, 5, 7, 8}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值