Python集合基本用法
1 #author F 2 3 list_1 = [1, 4, 6, 8, 6, 34, 77] 4 list_1 = set(list_1) #列表转集合 集合和字典一样 都是无序的 5 print(list_1, type(list_1)) 6 7 list_2 = set([4, 5, 6, 98, 2, 5]) 8 print(list_1, list_2) 9 10 #交集 11 print(list_1.intersection(list_2)) #{4, 6} 12 13 #并集 14 print(list_1.union(list_2)) #{1, 34, 98, 4, 2, 6, 5, 8, 77} 15 16 #差集 17 print(list_1.difference(list_2)) #{8, 1, 34, 77} list_1里有的list_2里没有的 18 print(list_2.difference(list_1)) #{{98, 2, 5}} list_2里有的list_1里没有的 19 20 #子集 21 list_3 = set([1]) 22 print(list_1.issubset(list_2)) #list_1是不是list_2的子集 23 print(list_1.issuperset(list_2)) #list_1是不是list_2的父集 24 print(list_1.issuperset(list_3)) #list_1是不是list_3的父集 True 25 26 #反向差集(并集去掉交集部分) 27 print(list_1.symmetric_difference(list_2)) #{1, 98, 2, 5, 34, 8, 77} 28 29 print("----------------------------------") 30 list_4 = set([3, 5]) 31 list_5 = set([3, 4]) 32 print(list_1.isdisjoint(list_4)) #无交集返回True 33 print(list_1.isdisjoint(list_5)) #有交集返回false 34 35 #集合运算符 36 t = set([1, 5, 9, 7, 56, 4]) 37 s = set(["ss", 4, 5]) 38 #交集 39 print(t & s) 40 #并集 41 print(t | s) 42 #差集 43 print(t - s) 44 #对称差集 45 print(t ^ s) 46 47 #集合增删改查 48 list_1.add(999) #增加 49 list_1.update([888888888,9999999]) #增加 50 print(list_1) 51 list_1.remove(888888888) #删除不存在的元素会报错 52 53 print(len(list_1)) #set的长度 54 print(34 in list_1) #判断是否在集合 55 print(list_1.pop()) #删除元素并把该元素返回 56 print(list_1.pop()) #删除元素并把该元素返回 57 list_1.discard(77) #删除指定值 有则删除 无则不操作 58 print(list_1)