pthon/零起点(一、集合)
set( )集合,集合是无序的,集合是可变的,集合是可迭代的set()强型转成集合数据类型set()集合本身就是去掉重复的元素
集合更新操作案列:
1 j={1,2,3,4,5} #创建一个集合2 l={4,5,6,7,8} #创建一个集合3 l.update(j) #更新集合4 print(l)5 -------------------------------6 运行结果:7 {1, 2, 3, 4, 5, 6, 7, 8}8 9 Process finished with exit code 0
集合删除操作案例:
1 l={4,5,6,7,8} #创建一个集合2 print(l.pop()) #删除并返回删除的元素3 print(l)4 ---------------------------------------5 运行结果:6 47 {5, 6, 7, 8}8 9 Process finished with exit code 0
集合添加元素操作案例:
1 l={4,5,6,7,8} #创建一个集合2 l.add(9) #添加元素3 print(l)4 ----------------------------------5 运行结果:6 {4, 5, 6, 7, 8, 9}7 8 Process finished with exit code 0
集合清空操作案列:
1 l={4,5,6,7,8} #创建一个集合2 l.clear() #清空集合3 print(l)4 -------------------------------5 运行结果:6 set()7 8 Process finished with exit code 0
集合拷贝操作案例:
1 l={4,5,6,7,8} #创建一个集合2 c=l.copy() #把l集合全部拷贝一份给c集合3 print(c)4 -------------------------------------------5 运行结果:6 {4, 5, 6, 7, 8}7 8 Process finished with exit code 0
集合的差集操作案例:
1 j={1,2,3,4,5} #创建一个集合 2 l={4,5,6,7,8} #创建一个集合 3 print(l-j) #求l集合和j集合之间的差集(-,是一种简写符号) 4 v=l.difference(j) #求l集合和j集合之间的差集 5 print(v) 6 ------------------------------------------------------------------ 7 运行结果: 8 {8, 6, 7} 9 10 Process finished with exit code 0
集合的差集不需要赋值操作案例:
1 j={1,2,3,4,5} #创建一个集合2 l={4,5,6,7,8} #创建一个集合3 j.difference_update(l) #求l集合和j集合之间的差集,直接修改 集合4 print(j)5 -----------------------------------------------------------------6 运行结果:7 {1, 2, 3}8 9 Process finished with exit code 0
集合删除操作案例:
1 1 l={4,5,6,7,8} #创建一个集合 2 2 l.discard(6) #删除集合内指定的元素 3 3 print(l) 4 4 -------------------------------------------- 5 5 运行结果: 6 6 {4, 5, 7, 8} 7 7 8 8 Process finished with exit code 0 9 ----------------------------------------------10 l={4,5,6,7,8} #创建一个集合11 l.remove(5) #删除指定的元素12 print(l)13 -----------------------------------------------14 运行结果:15 {4, 6, 7, 8}16 17 Process finished with exit code 0
集合并集操作案例:
1 j={1,2,3,4,5} #创建一个集合 2 l={4,5,6,7,8} #创建一个集合 3 print(l&j) #求l集合和j集合之间的并集(&,是求并集的符号) 4 v=j.intersection(l) #求l集合和j集合之间的并集 5 print(v) 6 j.intersection_update(l)#求l集合和j集合之间的并集 7 print(j) 8 ------------------------------------------------------------------ 9 运行结果:10 {4, 5}11 {4, 5}12 {4, 5}13 14 Process finished with exit code 0
集合判断是不是另一个集合父集合操作案例:
1 j={1,2,3,4,5,6,7,8} #创建一个集合2 l={4,5,6,7,8} #创建一个集合3 v=j.issuperset(l) #集合判断是不是另一个集合父集合操作案例:4 print(v)5 --------------------------------------------------------------------6 运行结果:7 True8 9 Process finished with exit code 0
集合判断是不是另一个集合子集合操作案例:
1 j={1,2,3,4,5,6,7,8} #创建一个集合2 l={4,5,6,7,8} #创建一个集合3 b=l.issubset(j) #判断集合是不是另一个集合的子集合4 print(b)5 -----------------------------------------------------------------6 运行结果:7 True8 9 Process finished with exit code 0
集合判断有没有交集操作案例:
1 j={1,2,3,} #创建一个集合2 l={4,5,6,7,8} #创建一个集合3 v=l.isdisjoint(j) #俩个集合没有任何交叉点就返回True,否则返回Flase4 print(v)5 ---------------------------------------------------------------------6 运行结果:7 True8 9 Process finished with exit code 0
集合对称差操作案例:
1 j={1,2,3,4,5} #创建一个集合 2 l={4,5,6,7,8} #创建一个集合 3 print(l^j) #求集合l和集合j的对称差(^,是求对称差的符号) 4 v=l.symmetric_difference(j) #求集合l和集合j的对称差 5 print(v) 6 ---------------------------------------------------------------------- 7 运行结果: 8 {1, 2, 3, 6, 7, 8} 9 {1, 2, 3, 6, 7, 8}10 11 Process finished with exit code 0
集合并集操作案例:
1 j={1,2,3,4,5} #创建一个集合 2 l={4,5,6,7,8} #创建一个集合 3 print(l|j) #求集合l和集合j的并集(|,是求并集的符号) 4 v=l.union(j) #求集合l和集合j的并集 5 print(v) 6 ---------------------------------------------------------------- 7 运行结果: 8 {1, 2, 3, 4, 5, 6, 7, 8} 9 {1, 2, 3, 4, 5, 6, 7, 8}10 11 Process finished with exit code 0