zoukankan      html  css  js  c++  java
  • 集合小结一

    1,普通方法取两个列表的交集eg:

    linux = ['zhou','wang','li','dai']
    java = ['dai','zhou','mack','rachel']
    
    
    linux_and_java = []
    
    for i in java:
        if i in linux:
            linux_and_java.append(i)
    
    print(linux_and_java)

    2,集合set

          a,关系测试 

           b,天然去重

           c,集合是无序的

        表现形式:{} 有value是字典,没有value是集合

          交集:两个都有

          差集:在列表a里有,在b里没有

          并集:把两个列表里,的元素,合并在一起,去重

    linux = {'zhou','wang','li','dai'}
    java = {'dai','zhou','mack','rachel'}
    
    print(type(linux))
    

      求交集intersection,符号&

    print(linux.intersection(java))
    #求交集
    print(linux & java)  #求交集
    

      求差集difference ,符号-

    print(linux.difference(java))   #linux里有,java里面没有的
    print(java.difference(linux))    #java里有,linux里没有

    print(linux - java)

    求联合并集union ,符号 |  

    print(linux.union(java))
    
    print(linux | java) 
    

     update ,把b合并到a中

    linux.update(java)     #把java合并到linux中
    print(linux)
    print(java)
    

      

     反向差集,对称差集,符号 ^

          表现形式 :symmetric_difference

          意思:a和b内,只要互相不在,的都列出

    print(linux.symmetric_difference(java))
    

      

    print(linux ^ java)
    

      

     增加:不能增加已有的,天然去重功能,决定了只能增加不同的

    linux.add('ALEX')
    linux.difference_update(java)#求差集,并赋值给a集合。会修改数据

    删除
    linux.discard('alex')   #删指定的某个,如果删除的元素不存在,不报错
    linux.pop() #随机删一个
    linux.remove('alex')  #删除,但是如果元素不存在,会报错

    linux.issubset(java)  #子集
    print(linux.issuperset(java))  #父集

    a.issuperse<b> #b是a的父集

    isdisjoint #两个集合没有任何关联,就返回为真

  • 相关阅读:
    Vue动态路由配置-router.addRoute
    安装nginx(Centos和docker)
    前后端分离跨域问题解决方案
    centos7 部署 gitlab
    date命令使用方法
    电脑明明安装了模块,但是pycharm还是找不到怎么办
    shell脚本中字符串截取问题
    linux中每登录一个终端,就会自动执行脚本
    腾讯文档中怎么添加二级缩进符号
    查看CPU某一核的情况
  • 原文地址:https://www.cnblogs.com/catherine007/p/7998139.html
Copyright © 2011-2022 走看看