Python集合及運算
集合(set)是一個無序的不重復(fù)元素序列。
可以使用大括號 { } 或者 set() 函數(shù)創(chuàng)建集合,注意:創(chuàng)建一個空集合必須用 set() 而不是 { },因為 { } 是用來創(chuàng)建一個空字典。
創(chuàng)建格式:
parame = {value01,value02,...}或者set(value)集合的寫法:
set1={1,2,3}set2=set([1,2,3])set3=set((1,2,3))set4=set({1:2})print(type(set1),type(set2),type(set3),type(set4))print(set1,set2,set3,set4)<class 'set'> <class 'set'> <class 'set'> <class 'set'>{1, 2, 3} {1, 2, 3} {1, 2, 3} {1}
集合的運算:
1、列表去重,變成集合即可去重list1=[1,2,2,'python','java','java']list2=set(list1)print(list2,type(list2)){1, 2, 'python', 'java'} <class 'set'>2、集合的交集list1=[1,2,2,'python','java','java']list1=set(list1)list2=[3,2,2,'python','java','c']list2=set(list2)print(list1.intersection(list2))或print(list1&list2){2, 'python', 'java'}3、集合的并集(list1和list2合到一起再去重)list1=[1,2,2,'python','java','java']list1=set(list1)list2=[3,2,2,'python','java','c']list2=set(list2)print(list1.union(list2))或print(list1|list2){1, 2, 3, 'c', 'java', 'python'}4、集合的差集(list1有l(wèi)ist2沒有的)list1=[1,2,2,'python','java','java']list1=set(list1)list2=[3,2,2,'python','java','c']list2=set(list2)print(list1.difference(list2))或print(list1-list2){1}5、集合的對稱差集(list1有l(wèi)ist2沒的,list2有的list1沒有的,去掉list1和list2重復(fù)的)list1=[1,2,2,'python','java','java']list1=set(list1)list2=[3,2,2,'python','java','c']list2=set(list2)print(list1.symmetric_difference(list2))或print(list1^list2){1, 3, 'c'}6、集合的子集(list1是list2子集?)list1=[1,2,2,'python','java','java']list1=set(list1)list2=[3,2,2,'python','java','c']list2=set(list2)print(list1.issubset(list2))False7、集合添加1項元素list1=[1,2,2,'python','java','java']list1=set(list1)list1.add(555)print(list1){1, 2, 555, 'java', 'python'}8、集合添加多項元素list1=[1,2,2,'python','java','java']list1=set(list1)list1.update([555,666,777])print(list1){'java', 1, 2, 777, 555, 666, 'python'}9、刪除集合元素list1=[1,2,2,'python','java','java']list1=set(list1)list1.remove(2)print(list1){1, 'python', 'java'}10、判斷元素是否在集合list1=[1,2,2,'python','java','java']list1=set(list1)print(1 in list1)True11、隨機刪集合1個元素并返回這個元素list1=[1,2,2,'python','java','java']list1=set(list1)print(list1.pop())1
評論
圖片
表情
