zoukankan      html  css  js  c++  java
  • 【python基础】集合方法汇总

    一、定义

      用于存储一组无序的不重复的数据

    二、特点

      1、 集合是无序的
      2、集合中的元素是不重复的, 唯一的
      3、集合中存储的数据必须是不可变的数据类型
      4、集合是可变的数据类型

    三、语法

      set1 = {1, 2, 3} # int --> 不可变

      1、增加:
        add()
        update()   

        参数: 可迭代对象(容器)
        将可迭代对象中和集合中不重复的元素添加到集合中

    1 # 添加操作 add
    2 set5 = {1, 2, 3}
    3 set5.add(4)
    4 print(set5)  # {1, 2, 3, 4}
    5 
    6 # update()
    7 set5.update({5, 6, 7, 8})
    8 print(set5)  # {1, 2, 3, 4, 5, 6, 7, 8}

      2、删除:
        pop() 随机删除某个元素
        remove() 删除指定的元素
        clear() 清空集合
        del 集合名 删除整个集合

     1 set5.pop()  # 随机删除一个数据
     2 print(set5)
     3 
     4 set5.remove(100)  # 删除指定元素
     5 print(set5)  # {2, 3, 4, 5, 6, 7, 8}
     6 
     7 set5.clear()
     8 print(set5)  # set()
     9 
    10 del set5
    11 # print(set5)  # NameError: name 'set5' is not defined 

      3、集合的遍历: for in

    四、运算

      1、交集: 取的公共部分 & intersection

    1 set1 = {1, 2, 3, 4}
    2 set2 = {3, 4, 5, 6}
    3 print(set1 & set2)  # {3, 4}
    4 print(set1.intersection(set2))

      2、并集: 取的是所有部分,不包括重复数据 | union

    1 print(set1 | set2)  # {1, 2, 3, 4, 5, 6}
    2 print(set1.union(set2))

      3、差集: 第一个集合有的,第二个集合没有的 - difference

    1 print(set1 - set2)  # {1, 2}
    2 print(set1.difference(set2))

      4、反交集: 跟交集反着 取的非公共部分 ^ symmetric_difference

    1 print(set1 ^ set2)  # {1, 2, 5, 6}
    2 print(set1.symmetric_difference(set2))

      5、子集:判断某个集合是不是另一个集合的子集 set1 < set2 issubset

    1 print(set1 < set2)  # False
    2 print(set1.issubset(set2))
    3 
    4 print({1, 2} < {1, 2, 3, 4})  # True
    5 
    6 print(set2 > set1)   # False
    7 print(set2.issuperset(set1))
    8 
    9 print({3, 4, 5, 6} > {3, 6})  # True
  • 相关阅读:
    2018 ACM 网络选拔赛 徐州赛区
    2018 ACM 网络选拔赛 焦作赛区
    2018 ACM 网络选拔赛 沈阳赛区
    poj 2289 网络流 and 二分查找
    poj 2446 二分图最大匹配
    poj 1469 二分图最大匹配
    poj 3249 拓扑排序 and 动态规划
    poj 3687 拓扑排序
    poj 2585 拓扑排序
    poj 1094 拓扑排序
  • 原文地址:https://www.cnblogs.com/Tree0108/p/12092114.html
Copyright © 2011-2022 走看看