集合

 1 import logging
 2 logger = logging.getLogger("log_example")
 3 logger.setLevel(logging.DEBUG)
 4 # 建立一个filehandler来把日志记录在文件里,级别为debug以上
 5 #fh = logging.FileHandler("logfile.log")
 6 #fh.setLevel(logging.DEBUG)
 7 # 建立一个streamhandler来把日志打在CMD窗口上,级别为error以上
 8 ch = logging.StreamHandler()
 9 #ch.setLevel(logging.ERROR)
10 # 设置日志格式
11 #formatter = logging.Formatter("%(asctime)s - %(name)s -%(pathname)s %(filename)s %(funcName)s %(lineno)s - %(levelname)s - %(message)s")
12 formatter = logging.Formatter("%(asctime)s - %(lineno)s - %(levelname)s - %(message)s")
13 ch.setFormatter(formatter)
14 #fh.setFormatter(formatter)
15 #将相应的handler添加在logger对象中
16 logger.addHandler(ch)
17 #logger.addHandler(fh)
18 # 开始打日志
19 logger.debug("debug message")
20 
21 
22 #创建集合
23 set1 = set({1,2,'aa','bb'})
24 set2 = {2,3,'bb','cc'}
25 print(set1,set2)
26 
27 #增add
28 set1.add('a1')
29 logger.info(set1)
30 set1.update('a')
31 set1.update('你好')
32 logger.info(set1)
33 set1.update([11,12,13])
34 logger.info(set1)
35 
36 #删remove
37 set1.remove(13)
38 logger.info(set1)
39 set1.pop()
40 logger.info(set1)
41 del set1
42 #print(set1)
43 
44 #交集
45 set1 = set({1,2,'aa','bb'})
46 set2 = {2,3,'bb','cc'}
47 logger.info(set1 & set2)
48 logger.info(set1.intersection(set2) )
49 
50 #并集
51 logger.info(set1 | set2 )
52 logger.info(set1.union(set2))
53 
54 #差集
55 logger.info(set1 - set2)
56 logger.info(set1.difference(set2))
57 
58 #反交集
59 logger.info(set1 ^ set2)
60 logger.info(set1.symmetric_difference(set2))
61 
62 #子集、超集
63 set1 = {1,2,3}
64 set2 = {1,2,3,4,5,6}
65 logger.info(set1 < set2)
66 logger.info(set1.issubset(set2))
67 
68 logger.info(set2 > set1)
69 logger.info(set2.issuperset(set1))
70 
71 set3 = frozenset(set1)
72 logger.info(set3)
73 logger.info(type(set3))
2018-08-25 19:20:55,541 - 19 - DEBUG - debug message
{1, 2, 'bb', 'aa'} {'cc', 'bb', 2, 3}
2018-08-25 19:20:55,541 - 29 - INFO - {1, 2, 'a1', 'bb', 'aa'}
2018-08-25 19:20:55,542 - 32 - INFO - {1, 2, '你', 'a1', 'bb', '好', 'a', 'aa'}
2018-08-25 19:20:55,542 - 34 - INFO - {1, 2, '你', 'a1', 'bb', '好', 11, 12, 13, 'a', 'aa'}
2018-08-25 19:20:55,542 - 38 - INFO - {1, 2, '你', 'a1', 'bb', '好', 11, 12, 'a', 'aa'}
2018-08-25 19:20:55,542 - 40 - INFO - {2, '你', 'a1', 'bb', '好', 11, 12, 'a', 'aa'}
2018-08-25 19:20:55,542 - 47 - INFO - {2, 'bb'}
2018-08-25 19:20:55,542 - 48 - INFO - {2, 'bb'}
2018-08-25 19:20:55,542 - 51 - INFO - {1, 2, 3, 'bb', 'cc', 'aa'}
2018-08-25 19:20:55,542 - 52 - INFO - {1, 2, 3, 'bb', 'cc', 'aa'}
2018-08-25 19:20:55,542 - 55 - INFO - {1, 'aa'}
2018-08-25 19:20:55,542 - 56 - INFO - {1, 'aa'}
2018-08-25 19:20:55,542 - 59 - INFO - {1, 3, 'cc', 'aa'}
2018-08-25 19:20:55,542 - 60 - INFO - {1, 3, 'cc', 'aa'}
2018-08-25 19:20:55,542 - 65 - INFO - True
2018-08-25 19:20:55,542 - 66 - INFO - True
2018-08-25 19:20:55,542 - 68 - INFO - True
2018-08-25 19:20:55,542 - 69 - INFO - True
2018-08-25 19:20:55,542 - 72 - INFO - frozenset({1, 2, 3})
2018-08-25 19:20:55,542 - 73 - INFO - <class 'frozenset'>

Process finished with exit code 0
运行结果

 

posted @ 2018-08-25 19:26  xiaodebing  阅读(114)  评论(0编辑  收藏  举报