python学习之容器(二)

接着上次的讲解的继续。
3、set
集合可以看作是一种特殊的数组,但是和数组的操作又有所不同,再集合中,还包含了交、差、并等运算。集合在初始化时,需要调用set函数,例如下面的代码

s = set([1, 2, 3, 2, 2, 4])
print(s)

直接结果如下图,

在这里插入图片描述

交是指两个集合共有的部分,可以使用&符合和intersection方法,下面是求s1和s2两个集合的交集

s1 = set([1, 2, 3, 4, 5, 6])
s2 = set([3, 4, 5, 6, 7, 8, 9])
print(s1 & s2)
print(s1.intersection(s2))

执行结果如下
在这里插入图片描述


并指的是两个集合的全部元素,可以使用|符合和union方法,下面是求s1和s2两个集合的并集

s1 = set([1,2,3,4,5,6])
s2 = set([3,4,5,6,7,8,9])
print(s1 | s2)
print(s1.union(s2))

执行结果是
在这里插入图片描述


差指的是另一个集合不存在的元素,可以使用-符合和difference方法,

s1 = set([1, 2, 3, 4, 5, 6])
s2 = set([3, 4, 5, 6, 7, 8, 9])
print(s1 - s2)
print(s1.difference(s2))

执行结果是
在这里插入图片描述
对称差
对称差指的是两个集合的并减去两个集合的交,即(A|B)-(A&B),可以使用^符合和symmetric_difference方法,

s1 = set([1, 2, 3, 4, 5, 6])
s2 = set([3, 4, 5, 6, 7, 8, 9])
print(s1 ^ s2)
print(s1.symmetric_difference(s2))

执行结果如下图所示,两个集合去除了公共部分的。
在这里插入图片描述

查找
集合的查找和字典查找类时,采用if value in set语法进行操作。
插入
在集合中,插入方法有addupdateadd方法是向集合中增加一个元素,update方法是向集合中增加集合。

s = set([1, 2])
print(s)
s.add(3)
print(s)
s.update(set([5, 6, 7]))
print(s)

执行结果如下,首先向集合中增加3,然后向集合中怎么一个新的集合。
在这里插入图片描述
删除
集合中的删除采用remove方法,删除特定的值

s = set([1, 2, 3, 4, 5, 6])
print(s)
s.remove(4)

print(s)

执行结果如下图所示,4从集合中移除了
在这里插入图片描述

遍历
遍历和数组类似,采用for value in set语法格式进行遍历。

s = set([1, 2, 3, 4, 5, 6])
for value in s:
    print(value)
发布了54 篇原创文章 · 获赞 9 · 访问量 1224

猜你喜欢

转载自blog.csdn.net/qq_29983883/article/details/105426916