set 集合

 1 #set集合:
 2 
 3 #isdisjoint() 判断两个集合有没有交集,如果没有交集返回True,否则返回False
 4 #issubset() 判断是否是子序列
 5 #issuperset() 判断是否是父序列
 6 #intersection() 判断A和B的交集
 7 #intersection_update() 得出的结果可以直接覆盖到A
 8 #difference() 差异
 9 #difference_update() 得出的结果可以直接覆盖到A
10 #symmetric_difference() 对称差集
11 #symmetric_difference_update() 得出的结果可以直接覆盖到A
12 #union() 并集,将两个集合合并为一个,并且自动去掉重复的元素
13 #update() 批量添加元素,括号内可以是列表,元组,字符串,数字
14 #add() 添加一个元素
15 #clear() 清除所有元素
16 
17 
18 #set :无序,不重复的序列,自动去重
19 创建:
20 zhang = []                #创建了一个列表类型
21 dict = {"jjj":123}         #创建了一个字典类型
22 a = {"123","456"}        #创建了一个集合(set) 类型
23 a = set()                 #创建空集合
24 
25 #列表转换为集合:
26 zhang = [11,22,11,22]       #创建的一个列表
27 a = set(zhang)              #把列表zhang转化为set类型的a
28 print (a)                   #输出a,发现set会自动去掉重复的元素
29 #执行结果:
30 {11, 22}
31 
32 #集合中添加元素:add() 
33 s = {'zhang','jiang','hua'}
34 print (s)
35 s.add(123)          #add() 添加一个元素
36 print (s)            #clear() 清除所有元素
37 
38 #差异 difference
39 s1 = {11,22,33}
40 s2 = {22,33,44}
41 s3 = s1.difference(s2)          #A中存在,B中不存在
42 print (s3)
43 s4 = s2.difference(s1)          #A中存在,B中不存在
44 print (s4)
45 #执行结果:
46 {11}
47 {44}
48 
49 #对称差集 symmetric_difference
50 s1 = {11,22,33}
51 s2 = {22,33,44}
52 s5 = s1.symmetric_difference(s2)
53 print (s5)
54 #执行结果:
55 {11, 44}
56 
57 #s1.difference_update(s2)           #difference_update() 直接更新(覆盖)到A里边
58 #print (s1)
59 s1.symmetric_difference_update(s2)
60 print (s1)
61 
62 s1.discard(11111)                    #discard() 移除指定元素,不存在不报错
63 print (s1)
64 
65 s3 = s1.intersection(s2)                     # intersection() A和B的交集
66 print (s3)                                #intersection_update() 可以直接覆盖到A
67 {33, 22}
68 
69 s1 = {11,22,33}
70 s2 = {22,33,44}
71 s3 = s1.union(s2)           #并集,将两个集合合并为一个,并且自动去掉重复的元素
72 print (s3)
73 #执行结果:
74 {33, 22, 11, 44}
75 
76 s1 = {11,22,33}
77 zhang = ['zz','xx','cc','vv']
78 s1.update(zhang)                #update() 批量添加元素,括号内可以是列表,元组,字符串,数字
79 print (s1)                            #update() 接收一个可以被迭代的对象
80 #执行结果:
81 {33, 11, 'zz', 'vv', 22, 'cc', 'xx'}
原文地址:https://www.cnblogs.com/zhangjianghua/p/8241244.html