day007 基本数据类型(set)

一、set

  集合:可变的数据类型,他里面的元素必须是不可变的数据类型,无序,不重复。

 1 set1 = set({1,2,3})
 2 print(set1)
 3 print(set2)
 4 set1 = {'alex','wusir','ritian','egon','barry',}
 5 
 6 # 增  add、update
 7 set1.add('女神')
 8 print(set1)
 9 
10 set1.update('abc')
11 print(set1)
12 
13 
14 #删除
15 set1.pop()  # 随机删除
16 print(set1.pop())  # 有返回值
17 print(set1)
18 
19 set1.remove('alex')  # 按元素
20 print(set1)
21 
22 set1.clear()
23 print(set1)  # set()
24 
25 del set1
26 print(set1)
27 
28 #
29 for i in set1:
30     print(i)
31 
32 set1 = {1,2,3,4,5}
33 set2 = {4,5,6,7,8}
34 set3 = set1 & set2
35 print(set3)  # {4, 5}
36 print(set1.intersection(set2))  # {4, 5}
37 
38 set1 = {1,2,3,4,5}
39 set2 = {4,5,6,7,8}
40 print(set1 | set2)  # {1, 2, 3, 4, 5, 6, 7,8}
41 print(set2.union(set1))  # {1, 2, 3, 4, 5, 6, 7}
42 
43 set1 = {1,2,3,4,5}
44 set2 = {4,5,6,7,8}
45 print(set1 ^ set2)  # {1, 2, 3, 6, 7, 8}
46 print(set1.symmetric_difference(set2))  # {1, 2, 3, 6, 7, 8}
47 
48 set1 = {1,2,3,4,5}
49 set2 = {4,5,6,7,8}
50 print(set1 - set2)  # {1, 2, 3}
51 
52 
53 # set1独有的
54 print(set1.difference(set2))  # {1, 2, 3}
55 
56 set1 = {1,2,3,}
57 set2 = {1,2,3,4,5,6}
58 
59 print(set1 < set2)
60 print(set1.issubset(set2))  # 这两个相同,都是说明set1是set2子集。
61 
62 print(set2 > set1)
63 print(set2.issuperset(set1))  # 这两个相同,都是说明set2是set1超集。
64 
65 
66 #去重
67 li = [1,2,33,33,2,1,4,5,6,6]
68 set1 = set(li)
69 # print(set1)
70 li = list(set1)
71 print(li)
72 s1 = {1,2,3}
73 print(s1,type(s1))
74 
75 s = frozenset('barry')
76 print(s,type(s))
77 for i in s:
78     print(i)
set操作

二、深浅copy

 1 # copy
 2 l1 = [1,2,3]
 3 l2 = l1.copy()
 4 print(l1,l2)
 5 print(id(l1),id(l2))
 6 l2.append('a')
 7 print(l1,l2)
 8 
 9 l1 = [1,2,[4,5,6],3]
10 l2 = l1.copy()
11 print(l1,id(l1))
12 print(l2,id(l2))
13 
14 l1.append('a')
15 print(l1,l2)
16 l1[2].append('a')
17 print(l1,l2)
18 print(id(l1[2]))
19 print(id(l2[2]))
20 
21 import copy
22 # copy
23 l1 = [1,2,[4,5,6
24 l1 = [1,2,3]
25 l2 = l1.copy()
26 print(l1,l2)
27 print(id(l1),id(l2))
28 
29 l2.append('a')
30 print(l1,l2)
31 
32 
33 l1 = [1,2,[4,5,6],3]
34 l2 = l1.copy()
35 
36 print(l1,id(l1))
37 print(l2,id(l2))
38 l1.append('a')
39 print(l1,l2)
40 l1[2].append('a')
41 print(l1,l2)],3]
42 
43 l2 = copy.deepcopy(l1)
44 print(l1,id(l1))
45 print(l2,id(l2))
46 l1[2].append('a')
47 print(l1,l2)
View Code

 

posted @ 2018-10-07 22:28  wangspy  阅读(54)  评论(0)    收藏  举报