python---数据类型---集合
集合的基本信息
1 # -*- coding:utf-8 -*- 2 # LC 3 4 list_1 = [1,2,5,2,4,1,9,5] 5 set_1 = set(list_1) #集合是无序的,消重的 6 print(set_1,type(set_1)) 7 8 set_2 = set([1,3,4,34,9]) 9 print(set_1,set_2) 10 11 #集合交集 12 print(set_1.intersection(set_2)) 13 print("交集:",set_1 & set_2) 14 15 #并集 16 print(set_1.union(set_2)) 17 print("并集:",set_1 | set_2) 18 19 #差集 20 print(set_1.difference(set_2)) 21 print(set_2.difference(set_1)) 22 print("差集:",set_1-set_2) #in set 1 but not in set 2 23 24 #子集 25 print(set_1.issubset(set_2)) 26 27 #父集 28 set_3 = set([32,33]) 29 print(set_1.issuperset(set_3)) 30 31 #对称差集,即将两个集合中都没有的取出来 32 print(set_1.symmetric_difference(set_2)) 33 print("对称差集:",set_1 ^ set_2) 34 35 #判读两者是否有交集,如果没有交集,则返回True 36 set_1 = {1,2,5,2,4,1,9,5} 37 set_3 = {32,33} 38 print(set_1.isdisjoint(set_3)) 39 40 41 #集合基础操作 42 #添加一项 43 set_1.add(999) 44 print(set_1) 45 #添加多项 46 set_1.update([888,333,222]) 47 print(set_1) 48 #删除一项 49 set_1.remove(999) 50 print(set_1) 51 #集合的长度 52 print(len(set_1)) 53 #判读子字符串,列表,集合,字典是否再里面 54 99 in set_1 #测试 x是否再集合set_1内部 55 set_3 >= set_1 #测试集合set_1中的每个元素是否都在set_2中 56 set_1.copy() #浅复制 57 58 59 print(set_1.pop()) #随意删除一个元素,并弹出相应元素的值 60 set_1.remove("element") #删除指定的元素,如果不存在,则报错, 61 62 set_1.discard("element") #删除指定的元素,如果不存在,则返回None,如果存在,则删除元素