集合相关操作简单些,没有列表那么多操作,下面让我们一起学习下吧。
1、创建集合
创建集合有多种方式,如下代码创建的都是相同的集合:
a = {1,2,3} b = set([1,2,3]) c = set({1,2,3}) d = set((1,2,3)) e = set({1:None,2:None,3:None}) f = set(i for i in range(1,4)) g = {i for i in range(1,4)} print(a,b,c,d,e,f,g)
2、添加元素
用add方法添加元素,如果添加的元素已在集合中则不会再次添加,如下:
a = {1,2,3} a.add(4) # 输出:{1,2,3,4},可能你输出的是其他顺序,没关系的,集合是无序的,所以都一样 print(a) a.add(4) # 虽然4已在集合中,但不会重复添加,仍然与上面输出一样 print(a)
3、删除元素
删除元素有多种方式,下面是其中的3种:
# 会修改a a = {1,2,3} a.remove(3) print(a) # 不会修改a,会创建一个新的集合b a = {1,2,3} b = a - {3} print(b) # 会修改a a = {1,2,3} a.difference_update({3}) print(a)
4、并集运算
集合a与集合b的并集是包含a、b所有元素的集合,可以用以下3种方式得出:
a = {1,2,3} b = {3,4,5} # 创建新的集合c c = a | b print(c) a = {1,2,3} b = {3,4,5} # 修改原有集合a a.update(b) print(a) a = {1,2,3} b = {3,4,5} # 创建新的集合c c = a.union(b) print(c)
5、交集运算
集合a与集合b的交集是包含a、b共同元素的集合,可以用以下3种方式得出:
a = {1,2,3} b = {3,4,5} # 创建新的集合c c = a & b print(c) a = {1,2,3} b = {3,4,5} # 修改原有集合a a.intersection_update(b) print(a) a = {1,2,3} b = {3,4,5} # 创建新的集合c c = a.intersection(b) print(c)
6、差集运算
集合a与集合b的差集是包含a但不包含b元素的集合,可以用以下3种方式得出:
a = {1,2,3} b = {3,4,5} # 创建新的集合c c = a - b print(c) a = {1,2,3} b = {3,4,5} # 修改原有集合a a.difference_update(b) print(a) a = {1,2,3} b = {3,4,5} # 创建新的集合c c = a.difference(b) print(c)
7、对称差集运算
集合a与集合b的对称差集是包含a或包含b但不包含两者相同元素的集合,可以用以下3种方式得出:
a = {1,2,3} b = {3,4,5} # 创建新的集合c c = a ^ b print(c) a = {1,2,3} b = {3,4,5} # 修改原有集合a a.symmetric_difference_update(b) print(a) a = {1,2,3} b = {3,4,5} # 创建新的集合c c = a.symmetric_difference(b) print(c)
8、子集与超集判断
如果判断集合a是否是集合b的子集,可以调用issubset方法,如果判断集合a是否是集合b的超集,可以调用issuperset方法,如下代码:
a = {1,2,3} b = {2,3} print(b.issubset(a)) print(a.issuperset(b))
还没有评论,来说两句吧...