1.集合:集合无序,不重复,可以用set(列表) 方法将列表转换为集合,实现去重
对比列表:集合是{}包围,列表是[]包围
对比字典:集合是没有key的,字典是有key的
set_1 = {1, 2, 3} set_2 = {1, 2, 4, 5, 7} set_3 = {1, 2, 3, 4, 5, 6, 7, 8} set_4 = {4, 5, 6} # set_1 跟 set_2 的交集 print(set_1.intersection(set_2)) print(set_1 & set_2) # set_1 跟 set_2 的并集 print(set_1.union(set_2)) print(set_1 | set_2) # set_1 跟 set_2 的差集:取出set_1有的而set_2没有的集合 = set_1 - 两者交集 print(set_1.difference(set_2)) print(set_1 - set_2) # set_1 跟 set_2 的对称差集:取出set_1跟set_2互相没有的集合 = 两者并集 - 两者交集 print(set_1.symmetric_difference(set_2)) print(set_1 ^ set_2) # 判断set_1 是否为 set_3的子集 print(set_1.issubset(set_3)) # 判断set_3 是否为 set_1的父集 print(set_3.issuperset(set_1)) # 判断set_1 跟set_4 是否没有交叉数据,即无交集返回True,有交集返回Flase print(set_1.isdisjoint(set_4)) # set添加一个 set_1.add(999) print(set_1) # set添加多个 set_1.update([777, 888, "aa", "bb"]) print(set_1) # set删除方法1,key不存在报错 set_1.remove("aa") print(set_1) # set删除方法2,key不存在也不报错 set_1.discard("ddd") print(set_1) # 判断字符是否在集合(字符串,列表,字典)里面 print("bb" in set_1) # 判断字符是否不在集合(字符串,列表,字典)里面 print("cc" not in set_1)