• Python基础(二)之集合


    集合以{}形式表现,一个集合中的元素各不相同,即集合体现为去重的特性。主要用于关系测试,常见的集合操作:交集、并集、插件、子集、父集、对称差集等。

    设置集合:

    list_1 = [1,3,4,5,7,9,4]
    print(list_1,type(list_1))
    list_1 = set(list_1)
    list_2 = set([2,4,6,8,5,10])
    print(list_1,list_2)

    结果:{1, 3, 4, 5, 7, 9} <class 'set'>

            {1, 3, 4, 5, 7, 9} {2, 4, 5, 6, 8, 10}

    一、英文关系测试

    1、交集  intersection

    print(list_1.intersection(list_2))  ##取list1和list2都有的元素

    结果:{4, 5}

    2、并集  union

    print(list_1.union(list_2))         ##取list1和list2所有的元素

    结果:{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}

    3、差集  difference

    print(list_1.difference(list_2))     ##在list1中取list2中没有的元素     

    结果:{1, 3, 9, 7}

    4、子集  issubset

    list_3 = set([1,3,5])
    print(list_3.issubset(list_1)) ##判断list3是否为list1的元素

    结果:True

    5、父集  issuperset

    print(list_1.issuperset(list_3))       ##判断list1是否为list3的元素

    结果:True

    6、对称差集

    print(list_1.symmetric_difference(list_2))    ##取list1和list2所有的元素并去掉都有的元素

    结果:{1, 2, 3, 6, 7, 8, 9, 10}

    二、逻辑运算符关系测试

    1、交集  &

    print(list_1 & list_2)

    2、并集  |

    print(list_1 | list_2)

    3、差集  -

    print(list_1 - list_2)

    4、对称差集  ^

    print(list_1 ^ list_2)

    三、集合常用方法

    1、add 

    list_1.add(66)
    print(list_1)   

    结果:{1, 66, 3, 4, 5, 7, 9}      ##元素66已经加到list1中

    2、update

    list_1.update([33,44,55])
    print(list_1)

    结果:{1, 66, 3, 4, 5, 33, 7, 9, 44, 55}    ##元素33,44,55加到list1中

    3、remove

    作用:删除集合中一个元素,若有这个元素会删除,但不会显示在屏幕上;若没这个元素则会报错
    print(list_1.remove(77))

    结果:

    None
    Traceback (most recent call last):
    File "F:/Python/day01/day_03/set.py", line 27, in <module>
    print(list_1.remove(77))
    KeyError: 77

    4、pop

    作用:随机删除集合中的一个元素并将删除的元素显示在屏幕上

    print(list_1.pop())
    print(list_1.pop())

    结果:

      1
      3

    5、discard

    作用:删除集合中元素,若没有也不会报错

    print(list_1.discard(4))
    print(list_1.discard(77))
    print(list_1)

    结果:

    None
    None
    {33, 5, 7, 9, 44, 55}

    6、update

    作用:批量向集合中添加元素

    list_1.update([33,44,55])
    print(list_1)

    结果:{33, 4, 5, 7, 9, 44, 55}



                                 
    
    
    
    


    
    
    
    



    
    
    
    
    
    
    


     
    
    
    
  • 相关阅读:
    ans Single VIP LLB and SLB config
    Kindle支持文档类型
    RFC2544测试指标
    C#中equal与==的区别
    COGS 144. [USACO Dec07] 魅力手镯【01背包复习】
    我的第六个网页制作:table标签
    我的第五个网页制作:pre、html转义、abbr标签的使用
    我的第四个网页制作:列表标签
    我的第三个网页制作:b、i、s、u、sub、sup标签的使用
    我的第二个网页制作:p,hn,br标签的使用
  • 原文地址:https://www.cnblogs.com/xiaoyu866/p/6260460.html
Copyright © 2020-2023  润新知