首页 > 代码库 > Python学习-31.Python中集合的一些操作
Python学习-31.Python中集合的一些操作
add方法:
1 s = {1,2,3}2 s.add(4)3 print(s)# {1, 2, 3, 4}
同list的append方法,若调用s.add(3),则不会有任何影响。这点与C#中的HashSet有区别。
update方法:
1 s = {1,2,3,4,5}2 s.update({3,5,7},[4,6])3 print(s)# {1, 2, 3, 4, 5, 6, 7}
同list的extend方法,将原来没有的元素添加进集合。update可以接受一个到多个可遍历的集合,例如上面例子就接收了一个集合和列表。
discard和remove方法:
两者都是删除元素,但既然Python提供了两个方法,那么肯定是有区别的。
1 s = {1,2,3,4,5}2 s2 = s.copy() 3 s.discard(1)4 s.discard(1)5 print(s)# {2, 3, 4, 5}6 s2.remove(1)7 s2.remove(1)# Error8 print(s2)
在上面的代码可以看出,discard在元素不存在的情况下等价于空操作,而remove在元素不存在的情况下,则会产生错误。
pop方法:
1 s={4,1,3}2 print(s.pop())3 print(s.pop())
在我的电脑上输出的是:1 3
由于集合是无序的,因此pop方法的含义是删除随机一个元素,若集合为空,则产生错误。
clear方法:
清空集合。
union方法:
1 a={1,2,3}2 b={2,3,4}3 c=a.union(b)4 print(c)# {1, 2, 3, 4}
组合两个集合。数学上的并集。
intersection方法:
1 a={1,2,3}2 b={2,3,4}3 c=a.intersection(b)4 print(c)# {2, 3}
数学上的交集。
difference方法:
1 a={1,2,3}2 b={2,3,4}3 c=a.difference(b)4 print(c)# {1}
a集合的所有未在b中出现的元素。
symmetric_difference方法:
1 a={1,2,3}2 b={2,3,4}3 c=a.symmetric_difference(b)4 print(c)# {1, 4}
所有只出现一次的元素。
issubset、issuperset方法:
a={1,2,3}b={1,2}print(b.issubset(a))# Trueprint(a.issuperset(b))# True
如代码所示,不解释。
Python学习-31.Python中集合的一些操作
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。