本文章主要對於集合的一些簡單操作
集合分為可變集合與不可變集合
可變集合(不可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)