python中有很多不同的資料結構,比如list,tuple,set,dic等,為什麼我要單獨講set呢。
因為set是乙個比較容易被遺忘的資料結構,不光在python中,在c++中也一樣,反正我是很少用set。但是用了之後發現set其實很強大的。下面就介紹一下set比較牛逼的幾個用處:
第一反應就是遍歷乙個列表,拿到所有資料然後再判斷在不在第二個列表裡。**如下:
defmain():
list1=[1,2,3,4,5]
list2=[3,4,5,6,7]
list3=
for each in
list1:
if each in
list2:
list3
if__name__ == '
__main__':
main()
如果用set的話,用intersetion()很容易就搞定了,它可以得到兩個set的交集
defmain():
list1=[1,2,3,4,5]
list2=[3,4,5,6,7]
s1,s2=set(list1),set(list2)
list3=list(s1.intersection(s2))
list3
if__name__ == '
__main__':
main()
同樣的方法還有:
s1.union(s2),用來得到兩個set的並集。即兩個list裡所有元素的合集。
s1.difference(s2), 用來得到兩個set的差集。即在s1中存在,但在s2中不存在的集合。
s1.symmetric_difference(s2), 它相當於s1.union(s2)-s1.intersection(s2)。即s1和s2中不重複的元素的合集。
python中的set操作
python view plain copy python的set和其他語言類似,是乙個無序不重複元素集,基本功能包括關係測試和消除重複元素.集合物件還支援union 聯合 intersection 交 difference 差 和sysmmetric difference 對稱差集 等數 算.se...
python中的set操作
python的set和其他語言類似,是乙個無序不重複元素集,基本功能包括關係測試和消除重複元素.集合物件還支援union 聯合 intersection 交 difference 差 和sysmmetric difference 對稱差集 等數 算.sets 支援 x in set,len set ...
Python 中的集合(set)
set 擁有類似 dict 的特點 可以用 花括號來定義 不推薦使用 其中的元素沒有序列,也就是是非序列型別的資料 set 中的元素不可重複,類似 dict 的鍵.set 也有一點 list 的特點 有一種集合可以原處修改.一 建立 set s1 set zhrq95 s1 set z h r q ...