集合的使用

  • 集合的特点:1.无序的 2. 不同的元素组成(有去重的功能)3.不可修改
  • 不可变列表
    s = frozenset ("hello")         #frozenset({'l', 'e', 'h', 'o'})
    print(s)

     

  • 添加
    set = {"assd","445",131,("jjsda") }
    set.add("sds")
    print(set )
  • 删除
    set = {"assd","445",131,("jjsda") }
    set.pop()                             #随机删除
    print(set )
    set = {"assd","445",131,("jjsda") }
    set.remove("445")
    print(set )
    set = {"assd","445",131,("jjsda") }
    set.discard("54")
    print(set )                        #删除元素不存在不会报错
  • 关系运算
  • 交集
  • set1 = {"assd","445",131,}
    set2 = {"assd","445"}
    print(set1 .intersection(set2 ) )
    set1 = {"assd", "445", 131, }
    set2 = {"assd", "445"}
    print(set1 & set2)
  • 并集
    set1 = {"assd", "445", 131, }
    set2 = {"assd", "445"}
    print(set1.union(set2 ) 
    set1 = {"assd", "445", 131, }
    set2 = {"assd", "445"}
    print(set1|set2  )
  • 差集
    set1 = {"assd", "445", 131, }
    set2 = {"assd", "445"}
    print(set1.difference(set2)   )
    set1 = {"assd", "445", 131, }
    set2 = {"assd", "445"}
    print(set1-set2 )
  • 交叉补集(并集减去交集)
    set1 = {"assd", "445", 131, }
    set2 = {"assd", "445",22}
    print(set1.symmetric_difference(set2 ) )
    set1 = {"assd", "445", 131, }
    set2 = {"assd", "445",22}
    print(set1^set2  )
  • 做差集后更新集合
    set1 = {"assd", "445", 131, }
    set2 = {"assd", "445",22}
    set1.difference_update(set2)
    print(set1 ) 
  • 查看是否有交集,没有显示True,有显示FALSE
    set1 = {"assd", "445", 131, }
    set2 = {"assd", "445",22}
    print(set1 .isdisjoint(set2 ) )
  • 查看set1是不是set2的子集
    set1 = {"assd", "445", 131, }
    set2 = {"assd", "445",22}
    print(set1 .issubset(set2 )  )
  • 查看set1是不是set2的超集
    set1 = {"assd", "445", 131, }
    set2 = {"assd", "445",22}
    print(set1 .issuperset(set2 )   )
  • 更新增加集合元素
    set1 = {"assd", "445", 131, }
    set2 = {"assd", "445",5445}           #add只能传一个参数,update可以更新多个值
    set1 .update(set2 )
    print(set1    )

posted on 2018-02-08 12:49  python_an  阅读(138)  评论(0编辑  收藏  举报

导航