python3集合操作方法详解 python3集合操作大全
Posted skings
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python3集合操作方法详解 python3集合操作大全相关的知识,希望对你有一定的参考价值。
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 #Author:sking 4 #python3集合操作方法详解 python3集合操作大全 5 6 #集合是无序的 7 #创建集合 8 a = {1,2,3} #正确 9 b = set([1,2,3]) #正确 10 c = set((1,2,3)) #正确 11 d = set({1:3,2:4}) #结果{1, 2} 只能取字典的key 12 13 #add添加集合中的元素(添加一项) 14 a = set([1,2,3]) 15 a.add(4) 16 print(a) #{1, 2, 3, 4} 17 #update添加集合中的元素(添加多项) 18 b = set([1,2,3]) 19 b.update([4,5,6]) 20 print(b) #{1, 2, 3, 4, 5, 6} 21 #remove删除集合中的元素(删除一项) 如果不存在就会报错 22 a = set([1,2,3]) 23 a.remove(2) 24 print(a) #{1, 3} 25 #discard删除集合中的元素(删除一项)如果不存在不会报错 26 n = set([2,3,4]) 27 n.discard(3) 28 print(n) #{2, 4} 29 #pop(随机移除一个元素) 30 n = set([2,3,4,5]) 31 n1 = n.pop() 32 print(n,n1) #{3, 4, 5} 2 33 #clear(清空所有元素) 34 name = set([‘Tom‘,‘Lucy‘,‘Ben‘]) 35 name.clear() 36 print(name) #输出:set() 37 38 #len计算集合长度 39 a = set([1,2,3]) 40 b = set([‘aaa‘, ‘bbb‘, ‘ccc‘]) 41 print(len(a), len(b)) #3 3 42 #in判断某一个元素是不是在集合中 43 a = set([1,2,3]) 44 print(1 in a) #True 45 #copy浅复制 46 a = set([1,2,3]) 47 b = a.copy() 48 print(b) #{1, 2, 3} 49 50 print(‘+_+_+_+_+_+_++_+_+_+_+_+_+_‘) 51 a = [1,2,3,1,4,5,3,6] 52 b = set(a) #去除列表a中重复的元素 53 print(b) #{1, 2, 3, 4, 5, 6} 54 print(type(b)) #<class ‘set‘> 55 56 c = set([1,2,3,4,5,6]) 57 d = set([1,2,3,8,9,0]) 58 #求交集 59 #方法1 60 print(c.intersection(d)) #{1, 2, 3} 61 #方法2 62 print(c & d) #{1, 2, 3} 63 #求并集(就是都放在一起,相同的仅保留一个) 64 #方法1 65 print(c.union(d)) #{0, 1, 2, 3, 4, 5, 6, 8, 9} 66 #方法2 67 print(c | d) #{0, 1, 2, 3, 4, 5, 6, 8, 9} 68 #求差集(就是求1里面有而2里面没有的,也就是去掉1里面和2相同的元素) 69 #方法1 70 print(c.difference(d)) #{4, 5, 6} 71 #方法2 72 print(c - d) #{4, 5, 6} 73 74 #对称差集(就是把两个集合中不相同的元素提取出来) 75 c = set([1,2,3,4,5,6]) 76 d = set([1,2,3,8,9,0]) 77 #方法1 78 print(c.symmetric_difference(d)) #{0, 4, 5, 6, 8, 9} 79 #方法2 80 print(c ^ d) #{0, 4, 5, 6, 8, 9} 81 82 #判断子集和父集 83 a = set([1,2,3]) 84 b = set([1,2,3,4,5,6]) 85 #判断a是否是b的子集 86 print(a.issubset(b)) #True 87 #判断b是否是a的父集 88 print(b.issuperset(a)) #True 89 #判断两个集合是否有交集,没有交集就返回True,有交集就返回False 90 a = set([1,2,3]) 91 b = set([4,5,6]) 92 c = set([1,4,5]) 93 print(a.isdisjoint(b)) #True 94 print(a.isdisjoint(c)) #False 95 96 """ 97 add(增加元素) 98 name = set([‘Tom‘,‘Lucy‘,‘Ben‘]) 99 name.add(‘Juny‘)print(name) #输出:{‘Lucy‘, ‘Juny‘, ‘Ben‘, ‘Tom‘} 100 101 clear(清空所有元素) 102 name = set([‘Tom‘,‘Lucy‘,‘Ben‘]) 103 name.clear() 104 print(name) #输出:set() 105 106 copy(拷贝set集合) 107 name = set([‘Tom‘,‘Lucy‘,‘Ben‘]) 108 new_name = name.copy()print(new_name) #输出:{‘Tom‘, ‘Lucy‘, ‘Ben‘} 109 110 difference(返回两个或多个集合中不同的元素,并生成新的集合) 111 A = set([2,3,4,5]) 112 B = set([3,4]) 113 C = set([2]) 114 n = n1.difference(n2,n3) 115 print(n) #输出:{5}#返回A集合里面,在B和C集合中没有的元素,并生成新的集合 116 117 difference_update(删除A集合里面,在B集合中存在的元素。) 118 A = set([2,3,4,5]) 119 B = set([4,5]) 120 A.difference_update(B) 121 print(A) #输出:{2, 3} 122 123 discard(移除元素) 124 n = set([2,3,4]) 125 n.discard(3) 126 print(n) #输出:{2, 4} 127 128 intersection(取交集,并生成新的集合) 129 n1 = set([2,3,4,5]) 130 n2 = set([4,5,6,7]) 131 n = n1.intersection(n2) 132 print(n) #输出:{4, 5} 133 134 intersection_update(取交集,修改原来的集合) 135 n1 = set([2,3,4,5]) 136 n2 = set([4,5,6,7]) 137 n1.intersection_update(n2) 138 print(n1) #输出:{4, 5} 139 140 isdisjoint(判断交集,是返回False,否返回True) 141 n1 = set([2,3,4,5]) 142 n2 = set([4,5,6,7]) 143 print(n1.isdisjoint(n2)) #输出:False 144 145 issubset(判断子集) 146 A = set([2,3]) 147 B = set([2,3,4,5]) 148 print(A.issubset(B)) #输出:True#A是B的子集 149 150 issuperset(判断父集) 151 A = set([2,3]) 152 B = set([2,3,4,5]) 153 print(B.issuperset(A)) # 输出:True#B是A的父集 154 155 pop(随机移除一个元素) 156 n = set([2,3,4,5]) 157 n1 = n.pop() 158 print(n,n1) # 输出:{3, 4, 5} 2 159 160 remove(移除指定元素) 161 n = set([2,3,4,5]) 162 n.remove(2) 163 print(n) # 输出:{3, 4, 5} 164 165 symmetric_difference(取交集,并生成新的集合) 166 A = set([2,3,4,5]) 167 B = set([4,5,6,7]) 168 print(A.symmetric_difference(B)) # 输出:{2, 3, 6, 7} 169 170 symmetric_difference_update(取交集,改变原来的集合) 171 A = set([2,3,4,5]) 172 B = set([4,5,6,7]) 173 A.symmetric_difference_update(B) 174 print(A) # 输出:{2, 3, 6, 7} 175 176 union(取并集,并生成新的集合) 177 A = set([2,3,4,5]) 178 B = set([4,5,6,7]) 179 print(A.union(B)) # 输出:{2, 3, 4, 5, 6, 7} 180 181 update(取并集,改变原来的集合) 182 A = set([2,3,4,5]) 183 B = set([4,5,6,7]) 184 A.update(B) 185 print(A) # 输出:{2, 3, 4, 5, 6, 7} 186 """
以上是关于python3集合操作方法详解 python3集合操作大全的主要内容,如果未能解决你的问题,请参考以下文章