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

    集合set

    集合是把不同的元素组成在一起实现集合。Set可以实现去重的功能,但其内容是无序的。查看时只能用遍历和迭代器查询内容。其是Python的基本数据类型。

    一、 集合的创建

    集合里的值是可哈希的(也就是不可变的),可以是整型,字符串,元组,但不可以是列表和字典。

    s=set('tom jim')           #创建集合
    print(s)                            #{'i', 'o', 't', 'j', ' ', 'm'}

    li=['t','o','m','jim']          #创建列表
    s1=set(li)                      #将列表转换成集合
    print(s1)                       # {'t', 'o', 'm', 'jim'}
    print('ji'in s1)                # False
    print('jim' in s1)              # True

    二、 集合的操作

    1.   In

    s=set('tom jim')              #创建集合

    print('t' in s)                 #true

    2.   遍历

    s=set('tom jim')         #创建集合

    for i in s:

          print(i)

    3.   添加

    s.add('uu')            #将引号内的元素当成一个整体添加一个元素
    print('s=',s)           #s= {'t', 'j', 'i', ' ', 'uu', 'm', 'o'}

    s.update('uuabs')       #将update内的元素当成序列添加多个元素
    print('s=',s)                # s= {'j', 't', ' ', 'b', 'i', 's', 'a', 'm', 'o', 'u'}

    s.update(['uua','bs']) #将update内的列表当成序列添加多个元素

    print('s=',s)                #s= {'i', 'bs', 't', 'j', 'o', 'uua', ' ', 'm'}

    4.   删除

    1)remove

    s=set('tom jim')           #创建集合
    print(s)                            #{'i', 'o', 't', 'j', ' ', 'm'}

    s.remove('o')              #删除元素‘o’

    print(s)                       # {'m', ' ', 'i', 't', 'j'}

    2).pop

    s=set('tom jim')         #创建集合
    print(s)                     #{'i', 'o', 't', 'j', ' ', 'm'}

    s.pop()                     #随机删除集合内的一个元素
    print('s2=',s)             # s2= {'t', 'm', 'j', ' '}

    3)  clear

    s=set('tom jim')         #创建集合
    print(s)                     #{'i', 'o', 't', 'j', ' ', 'm'}

    s.clear()                   #清空集合s内的元素。不等同于删除

    print(s)                     # set()

    4)  del

    s=set('tom jim')         #创建集合
    print(s)                     #{'i', 'o', 't', 'j', ' ', 'm'}

    del s                        #删除集合s

    print(s)                    # 报错NameError: name 's' is not defined

    5.集合运算

    1)交集

    a=set([1,2,3,4,5])

    b=set([4,5,6,7,8])

    print(a.intersection(b))              #{4,5}

    print(a & b )                               #{4,5}

    2) 并集

    a=set([1,2,3,4,5])

    b=set([4,5,6,7,8])

    print(a.union(b))             #{1,2,3,4,5,6,7,8}

    print(a | b)                      #{1,2,3,4,5,6,7,8}

    3) 差集

    a=set([1,2,3,4,5])

    b=set([4,5,6,7,8])

    print(a.defference(b))                #a集合中有的而b集合中没有{1,2,3}

    print(a - b)                                 #a集合中有的而b集合中没有{1,2,3}

    print(b.defference(a))                # b集合中有的而a集合中没有{6,7,8}

    print(b – a )                                # b集合中有的而a集合中没有{6,7,8}

    print(a.symmetric_defference(b))         #对称差集,{1,2,3,6,7,8}

    print(a ^ b )                               #对称差集,{1,2,3,6,7,8}

    4) 父集(超集)

    a=set([1,2,3,4,5])

    b=set([4,5,6,7,8])

    print(a.issuperset(b))            #a是否完全包含b,结果为false

    print(a > b )                           #a是否完全包含b,结果为false

    5) 子集

    a=set([1,2,3,4,5])

    b=set([4,5,6,7,8])

    print(a.issub(b))              #a是否是b的子集,结果为false

    print(a < b )                           #a是否是b的子集,结果为false

  • 相关阅读:
    异常
    抽象类
    java基础—接口3
    java基础—接口2
    java基础—接口1
    Android拍照适配方案
    继承—Car
    继承—矩形
    使用CSS和jQuery实现tab页
    纯CSS实现圆形进度条
  • 原文地址:https://www.cnblogs.com/xshan/p/7623847.html
Copyright © 2011-2022 走看看