Python基础知识:集合

1、集合(set)是一个存放在中括号内的无序,不重复的序列。例如:set = {'1','12','25'}

2、创建集合的两种方法:

  • set = {1,2,3} 中括号直接创建
  • set = {[1,2.3]}  通过方法set()将元组或者列表转换成集合,默认会删除重复值

3、对集合的基本操作

s = {1,2,3,4}
s.add(5) #添加元素
print(s)
s = set()
s.add(1) #创建空集合,然后添加元素
s.add(2)
print(s)
s2 = s.copy() #复制集合
print(s2)
s.clear() #清空集合
print(s)
#A中存在,B中不存在,A在前,B在后
s1 = {11,22,33}
s2 = {22,33,44}
s3 = s1.difference(s2)
print(s3)
#去掉两者交集,得到剩下的集合
s4 = s1.symmetric_difference(s2)
print(s4)
#更新集合,将A中有,B中没有的,更新为A集合
s1.difference_update(s2)
print(s1)
#将去除交集之后的集合,更新为A集合
s1.symmetric_difference_update(s2)
print(s1)
#discard移除指定元素,不存在也不报错
s = {1,2,3}
s.discard(1)
print(s)
#remove移除元素,不存在会报错
s = {1,2,3}
s.remove(1)
print(s)
#pop随机删除元素,并且可以继续使用
s = {2,3,4}
s1 = s.pop()#括号里不能加参数
print(s1)
#求AB的交集
s1 = {11,22,33}
s2 = {22,33,44}
s3 = s1.intersection(s2)
print(s3)
#将AB交集更新为A
s1 = {11,22,33}
s2 = {22,33,44}
s1.intersection_update(s2)
print(s1)
#A是否是B的子序列,是则返回True
s1 = {11,22,33}
s2 = {22,33}
s3 = s2.issubset(s1)
print(s3)
#A是否是B的父序列,是则返回True
s1 = {11,22,33}
s2 = {22,33}
s3 = s1.issuperset(s2)
print(s3)
#合并两个集合,去重
s1 = {11,22,33}
s2 = {22,33,44}
s3 = s1.union(s2)
print(s3)
'''update()更新集合,括号内接受一个可以for循环的序列,
列表、元组或者字符串都行,函数自动将序列内元素添加到集合中,
如果是字典,只会把键加入集合
'''
s1 = {11,22,33}
s2 = [1,2,3,4,]
s3 = (10,20,30,)
s4 = 'charlie'
s5 = {'Q':'W','E':'R'}
s1.update(s2)
print(s1)
s1.update(s3)
print(s1)
s1.update(s4)
print(s1)
s1.update(s5)
print(s1)

 

posted @ 2018-11-23 12:21  Charlie大夫  阅读(284)  评论(0编辑  收藏  举报