zoukankan      html  css  js  c++  java
  • python set集合的用法

    set 集合:是一组无序的不可重复的集合

    1.set的创建

    se={"ww3",23432,"name"}
    
    #创建一个空的集合
    se1=set()

    2.转换成集合

    li=[23,56,23,44]
    se=set(li)
    print(se)
    #输出:{56, 44, 23}

    3.set的常用方法

    add(self, *args, **kwargs): 给集合添加元素,如果该集合已经有这个元素,那么久没有添加
    #集合中没有添加的元素情况
    se={23,54,11,788}
    se.add(35)
    print(se)
    #输出:{11, 788, 35, 54, 23}
    
    #集合中已经有了要添加的元素的情况
    se={23,54,11,788}
    se.add(23)
    print(se)
    #输出:{11, 788, 54, 23}clear(self, *args, **kwargs)

    clear(self, *args, **kwargs):删除集合中所有元素

    se={23,54,11,788}
    se.clear()
    print(se)
    #输出:set()

    difference(self, *args, **kwargs):比较两个集合,找出对方没有的元素,并返回一个新的集合

    se={23,54,11,788}
    re={23,22,11,77}
    ge=se.difference(re)#找出se中 除了与re相同的元素外的所有元素
    print(ge)
    #输出:{788, 54}

    difference_update(self, *args, **kwargs):比较连个集合,找出对方没有的元素,并且更新自己

    se={23,54,11,788}
    re={23,54,11,77}
    se.difference_update(re)#找出se中 除了与re相同的元素外的所有元素
    print(se)
    #输出:{788}

    discard(self, *args, **kwargs):   从集合中移除一个元素;如果移除的元素不在集合中则什么也不会发生

    se={23,54,11,788}
    se.discard(23)
    print(se)
    #输出:{11, 788, 54}

    remove(self, *args, **kwargs): 移除集合中的一个元素,该元素必须是集合中的成员如果不是就会报错

    intersection(self, *args, **kwargs):  将2个集合的交集作为一个新的集合返回

    se={23,54,11,788}
    re={23,44,55,66}
    ge=se.intersection(re)
    print(ge)
    #输出:{23}

    intersection_update(self, *args, **kwargs):  找出两个集合的相同元素并更新自己

    se={23,54,11,788}
    re={23,44,55,66}
    se.intersection_update(re)
    print(se)
    #输出:{23}

    pop(self, *args, **kwargs): 任意移除集合中的一个元素,并返回移除的元素 ;如果集合为空则会报错

    se={23,54,11,788}
    re=se.pop()
    print(se)
    print(re)
    #输出:{788, 54, 23}      11

    update(self, *args, **kwargs):  更新另一个集合到自己的集合中

    se={23,54,11,788}
    ge={23,324,567}
    se.update(ge)
    print(se)
    #输出:{788, 324, 54, 23, 567, 11}

    isdisjoint(self, *args, **kwargs):判断两个集合是否有交集  没有交集返回结果为True

    se={23,54,11,788}
    re=[66,77,88]
    get=se.isdisjoint(re)
    print(get)
    #输出:True

    issubset(self, *args, **kwargs): 判断是否是子集合 如果是返回结果为false

    se={23,54,11,788}
    re={23,54}
    get=se.issubset(re)
    print(get)
    #输出:False

    issuperset(self, *args, **kwargs): 判断是否是父集合 如果是返回结果为True

    se={23,54,11,788}
    re={23,54}
    get=se.issuperset(re)
    print(get)
    #输出:True

    union(self, *args, **kwargs): 将两个集合的元素合在一起,并返回一个新的集合

    se={23,54,11,788}
    re={23,54,777,333}
    get=se.union(re)
    print(get)
    #输出:{777, 11, 333, 788, 54, 23}

    symmetric_difference(self, *args, **kwargs): 将两个集合互相比较,把对方没有自己有的元素统一集合在一个集合里面,并返回一个新的集合

    se={23,54,11,788}
    re={23,54,777,333}
    get=se.symmetric_difference(re)
    print(get)
    #输出:{777, 11, 333, 788}

    symmetric_difference_update(self, *args, **kwargs): 将两个集合互相比较,把对方没有自己有的元素统一集合在一个集合里面,并更新集合

     

  • 相关阅读:
    LeetCode 101. 对称二叉树
    PTA 两个有序序列的中位数(25分)
    CF1567
    亚线性筛
    LowbitMatrix(线段树)
    Matrix(组合数学)
    [模版] 数论基础模版
    Gym102001
    Gym102483A
    [模版] Miller-Rabin素性测试&Pollard-Rho分解质因数
  • 原文地址:https://www.cnblogs.com/wangbinbin/p/7067884.html
Copyright © 2011-2022 走看看