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

    集合是一个无序的,不重复的数据组合
    主要可以进行去除重复元素,但是是无序的,另外用于关系测试,比如交集、并集等。
    #去重
    list1 = set(list1)#关系测试
    #交集(两个集合里面都有的值):
    list1.intersection(list2)

    #并集(把两个集合合并起来,然后去重):
    list1.union(list2)

    #差集(把list1里面有的而list2里面没有的取出来):
    list1.difference(list2)
    #对称差集(两个集合里面,互相没有的取出来,也就是只去掉那些互相都有的值)
    list1.symmetric_difference(list2)

    #子集(判断list1是否包含了list2里面的所有值)
    list2.issubset(list1)
    #父集(判断list1是否为list2的父集)
    list1.issuperset(list2)

    #无交集(判断list1和list2是否完全没有任何交集)
    list1.isdisjoint(list2)

    a = t | s          # t 和 s的并集

    b = t & s # t 和 s的交集

    c = t – s # 求差集(项在t中,但不在s中)

    d = t ^ s # 对称差集(项在t或s中,但不会同时出现在二者中)

    添加和更新

    t.add('a') # 添加一项

    s.update([10,20,30]) # 在s中添加多项
    使用remove()可以删除一项:

    t.remove('H') #有就删除,没有就报错
    t.pop() #随机弹出一个
    t.discard('H') #有就删除,没有也不会报错

    len(s)
    set 的长度

    x in s
    测试 x 是否是 s 的成员

    x not in s
    测试 x 是否不是 s 的成员

    s.issubset(t)
    s <= t
    测试是否 s 中的每一个元素都在 t 中

    s.issuperset(t)
    s >= t
    测试是否 t 中的每一个元素都在 s 中

    s.union(t)
    s | t
    返回一个新的 set 包含 s 和 t 中的每一个元素

    s.intersection(t)
    s & t
    返回一个新的 set 包含 s 和 t 中的公共元素

    s.difference(t)
    s - t
    返回一个新的 set 包含 s 中有但是 t 中没有的元素

    s.symmetric_difference(t)
    s ^ t
    返回一个新的 set 包含 s 和 t 中不重复的元素

    s.copy()
    返回 set “s”的一个浅复制
  • 相关阅读:
    将本地sql文件导入到mysql中
    eclipse注释乱码问题
    导入import com.sun.image.codec.jpeg.JPEGCodec出错
    cmd启动和停止tomcat
    Tomcat修改端口
    ==和equals
    多态
    关键字——this,super,static,final
    方法重载、方法重写、四种权限修饰、JavaBean、代码块
    异常
  • 原文地址:https://www.cnblogs.com/guolei2570/p/8733874.html
Copyright © 2011-2022 走看看