集合定义
set():是一个无序不重复元素序列可以使用{}或者set()来创建集合
创建空的集合必须使用set(),因为{}是用来创建一个新的字典
创建
s = {1,2,3,2,3,4}
print(s)
print(type(s))
#打印结果
{1, 2, 3, 4} #去掉重复的数字
<class 'set'> #类型为set集合
for循环,成员操作
s = {1,2,3}
print(1 in s)
print(1 not in s)
for i in s:
print(i,end='')
print()
#打印结果
True
False
123
枚举
s = {1,2,3}
for i,v in enumerate(s):
print('index: %s,value: %s' %(i,v))
#打印结果
index: 0,value: 1
index: 1,value: 2
index: 2,value: 3
添加
** 集合是一个可变的数据类型
添加顺序和在集合中存储的顺序不同**
s = {6, 7, 8, 9, 1, 2, 3}
print(s)
s.add(10)
s.add(0)
print(s)
#打印结果
{1, 2, 3, 6, 7, 8, 9}
{0, 1, 2, 3, 6, 7, 8, 9, 10}
增加多个元素
s = {6, 7, 8, 9, 1, 2, 3}
s.update({1, 2, 3, 4, 6, 7, 8, 10})
print(s)
#打印结果
{1, 2, 3, 4, 6, 7, 8, 9, 10}
删除
s = {6, 7, 8, 9, 1, 2, 3}
b = s.pop()
a = s.pop()
print(s)
print(a)
print(b)
#打印结果
{3, 6, 7, 8, 9}
2
1
交集,并集,差集,对等差分
s1 = {1, 2, 3}
s2 = {2, 3, 4}
# 并集
print('并集:', s1.union(s2))
print('并集:', s1 | s2)
# 交集
print('交集:', s1.intersection(s2))
print('交集:', s1 & s2)
# 差集
# s1和s2 的差集:s1中有哪些元素s2中没有
print('差集:', s1.difference(s2))
print('差集:', s1 - s2)
# s2和s1 的差集:s2中有哪些元素s1中没有
print('差集:', s2.difference(s1))
print('差集:', s2 - s1)
# 对等差分:并集-交集
print('对等差分:',s1.symmetric_difference(s2))
print('对等差分:',s1 ^ s2)
#打印结果
并集: {1, 2, 3, 4}
并集: {1, 2, 3, 4}
交集: {2, 3}
交集: {2, 3}
差集: {1}
差集: {1}
差集: {4}
差集: {4}
对等差分: {1, 4}
对等差分: {1, 4}
子集,超集,不相交
s3 = {'redhat','westos'}
s4 = {'redhat','westos','linux'}
# s3是否是s4的子集
print(s3.issubset(s4))
# s3是否是s4的超集
print(s3.issuperset(s4))
# 两个集合是否不相交
print(s3.isdisjoint(s4))
#打印结果
True
False
False
来源:CSDN
作者:房渊
链接:https://blog.csdn.net/fangyuan1997/article/details/103467469