Python集合操作

引用于:https://www.cnblogs.com/chaoren399/p/4858253.html

本文章主要对于集合的一些简单操作

集合分为可变集合与不可变集合

可变集合(不可hash)

s={1,'a',(1,2,3),}  #等同于set({1,'a',(1,2,3),})

添加值

s={1,'a',(1,2,3),}
print(s)
s.add('123')
print(s)

清除集合

s={1,'a',(1,2,3),}
print(s)
s.clear()
print(s)

复制集合

s={1,'a',(1,2,3),}
print(s)
a=s.copy()
print(a)

随机删除

s={1,'a',(1,2,3),}
print(s)
s.pop()
print(s)

指定删除元素

s={1,'a',(1,2,3),}
print(s)
s.remove(1)
print(s)

不可重复特性

不可变集合

使用的比较少

调用frozenset方法

f=frozenset({1,2,3,4})

定义完你会发现没有f.add,f.pop,f.remove方法

可变集合常用操作

复制代码
例子:
python_list=['tom','jack','lucy'] openstact_list=['rose','tom','xiaoming','lucy'] p_u=set(python_list) o_u=set(openstact_list) #将列表定义成集合
复制代码

差集:

#只学习openstack课程没有学习python课程,反之相减一样

res=o_u - p_u
print(res)

并集: 

res=p_u | o_u
print(res)

 交集:

res=p_u & o_u
print(res)

 交差补集:

res=p_u ^ o_u
print(res)

参数操作:

print(p_u.difference(o_u))  #直求结果
p_u.difference_update(o_u)#求出结果并更新
print(p_u)
p_u.discard('tom')  #如果集合中用则移除,没有则什么都不干
print(p_u)
p_u.discard('asdasdasd')
print(p_u)
print(p_u.intersection(o_u))      #交集
p_u.intersection_update() #输出并更新
res=p_u.union(o_u)  #并集
print(res)
res=p_u.symmetric_difference(o_u) #交叉补集
print(res)
原文地址:https://www.cnblogs.com/find1/p/10603287.html