<Python基础>集合的基本操作

 1 #小知识点:返回对象的内存地址
 2 i,j = 1,2
 3 print(id(i),id(j))
 4 #集合的基本操作,
 5 #相当于没有键值对的字典,里面的元素是无序且不重复的
 6 #一般写法
 7 s = set({1,2,"xiaohei"})
 8 s0 = set([1,2,3,4,4,3]) #通常用于列表去重
 9 s1 = {1,2,"xiaobai"}
10 print(s,s1,s0)
11 #
12 s.add('Hubei')#若无直接加在末尾
13 print(s)
14 s.update('abc') #迭代的增加
15 print(s)
16 
17 #
18 #print(s.pop()) #随机删除,返回值是删除的值
19 s.remove('a') #按元素删除,无返回值 若无该元素报错
20 #s.clear() #清空集合
21 #del s #删除整个集合
22 
23 #
24 #因为集合的元素是无序的,没法进行更改
25 
26 #
27 for i in s:
28     print(i)
29 print(s)
30 
31 #交集
32 print(s & s1)
33 print(s.intersection(s1)) #写法不一样,效果一样,求交集
34 
35 #并集
36 print(s | s1)
37 print(s.union(s1)) #写法不一样,效果一样,求并集
38 
39 #差集
40 print(s - s1)
41 print(s.difference(s1))    #写法不一样,效果一样,求差集--属于s单不属于s1的元素
42 
43 #反交集
44 print(s ^ s1)   #除开交集之后的并集
45 
46 #去重
47 li = [1,1,2,3,4,1,2,3,7,5,3,'123']
48 s2 = set(li)
49 print(s2)
50 li = list(s2)
51 print(li)

输出结果:

 1 1361600672 1361600704
 2 {1, 2, 'xiaohei'} {1, 2, 'xiaobai'} {1, 2, 3, 4}
 3 {'Hubei', 1, 2, 'xiaohei'}
 4 {'Hubei', 1, 2, 'b', 'c', 'a', 'xiaohei'}
 5 Hubei
 6 1
 7 2
 8 b
 9 c
10 xiaohei
11 {'Hubei', 1, 2, 'b', 'c', 'xiaohei'}
12 {1, 2}
13 {1, 2}
14 {'Hubei', 1, 2, 'b', 'c', 'xiaobai', 'xiaohei'}
15 {'Hubei', 1, 2, 'b', 'c', 'xiaobai', 'xiaohei'}
16 {'Hubei', 'b', 'xiaohei', 'c'}
17 {'Hubei', 'b', 'xiaohei', 'c'}
18 {'Hubei', 'b', 'c', 'xiaobai', 'xiaohei'}
19 {1, 2, 3, 4, 5, 7, '123'}
20 [1, 2, 3, 4, 5, 7, '123']
原文地址:https://www.cnblogs.com/shuimohei/p/9646256.html