zoukankan      html  css  js  c++  java
  • 集合

    一、集合特点:

    1、不同元素组成

    2、无序

    3、集合中元素必须是不可变类型(int、str、tuple)

    补充:

    正常集合都是可修改的,但frozenset是不可修改的集合

    二、集合的创建

    s=set('hello')
    print(s)
    
    s=set(['alex','alex','sb'])
    print(s)

    三、集合的方法

    1、添加&清除&拷贝

    
    
    s={1,2,3,4,5,6}
    s2={678,789,987}
    #添加
    '''
    添加一个值
    '''
    s.add(
    's') s.add('3') s.add(3) print(s)
    '''
    添加多个值
    '''
    s.update(s2)
    print(s)


    #清除

    s.clear()
    print(s)

    #拷贝
    s1=s.copy()
     

    2、删除

    s={'sb',1,2,3,4,5,6}
    
    #随机删
    s.pop()
    
    #指定删除
    s.remove('sb')
    s.remove('hellol')   #删除元素不存在会报错
    s.discard('sbbbb')   #删除元素不存在不会报错
    print(s)

    3、difference_update() & intersection_update() & symmetric_difference_update()

      update()

    python_l = ['lcg', 'szw', 'zjw', 'lcg']
    linux_l = ['lcg', 'szw', 'sb']
    p_s = set(python_l)
    l_s = set(linux_l)
    print(p_s, l_s)
    '''
    difference_update()功能和下面代码一样
    print('差集',p_s-l_s)
    p_s=p_s-l_s
    '''
    p_s.difference_update(l_s)
    print(p_s)

    4、isdisjoint()

    若两集合没有交集返回True

    s1={1,2}
    s2={2,3,5}
    print(s1.isdisjoint(s2))

    5、issubset() & issuperset()

    是否是子集&父集

    s1 = {1, 2}
    s2 = {1, 2, 3}
    print(s1.issubset(s2))  # s1 是s2 的子集
    print(s2.issubset(s1))  # False
    print(s2.issuperset(s1))  # s1 是s2 的父集

    四、集合关系运算

    python_l=['lcg','szw','zjw','lcg']
    linux_l=['lcg','szw','sb']

    #将列表转换成集合并去重 p_s
    =set(python_l) l_s=set(linux_l) #求交集 print(p_s,l_s) print(p_s.intersection(l_s)) print(p_s&l_s) #求并集 print(p_s.union(l_s)) print(p_s|l_s) #差集 print('差集',p_s-l_s) print(p_s.difference(l_s)) print('差集',l_s-p_s) print(l_s.difference(p_s))
    #交叉补集
    print('交叉补集',p_s.symmetric_difference(l_s))
    print('交叉补集',p_s^l_s)

      

  • 相关阅读:
    JavaScript中创建对象的几种模式
    Vue学习5:条件渲染
    Vue学习4:class与style绑定
    Vue学习3:计算属性computed与监听器
    Vue学习2:模板语法
    普通递归与优化递归
    new操作符具体干了什么呢?
    各种形式存放token
    用es6的Array.reduce()方法计算一个字符串中每个字符出现的次数
    ES6 对象的解构赋值
  • 原文地址:https://www.cnblogs.com/jiangzhch5/p/13257404.html
Copyright © 2011-2022 走看看